Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Second stage bootloader (i386) hangs on ls command for ext2
Hi,
On Thu, Dec 22, 2011 at 7:00 PM, Izumi Tsutsui
<tsutsui%ceres.dti.ne.jp@localhost> wrote:
> Hi,
>
> Evgeniy Ivanov wrote:
>
>> > I have not checked if their readdir() API can be applicable our
>> > current ls implementation, but what do you think about this idea,
>> > i.e. file system independent ls command using fs dependent readdir() ops?
>> >
>> > readdir looks better as fs_ops, but if it requires too much
>> > modification in our current implementation, ls in fs_ops
>> > could be a interim workaround.
>>
>> I don't like having ls in fs_ops either and I agree, that readdir
>> similar to the OpenBSD's one would be better.
>> Ideally, libsa (at least fs_ops) shouldn't produce any output, it's up
>> to boot loader to printf.
>>
>> The difference is in two parts: fs dependent part should work with an
>> external buffer (OpenBSD way, they copy name and then do stat) or
>> return a dirent pointer into internal buffer (to have the output they
>> get, calling stat() is required, but to keep our current ls output it
>> might be skipped). The second is printing the data. Ls should use
>> readdir(), but If we leave it in libsa::ls() we will not have any
>> benefits from readdir(). And moving it to the bootloaders is not a
>> very easy task, because there're plenty of them (and no way to test
>> changes for non-i386 arch).
>>
>> I think we could leave current approach as interim workaround.
>
> Ok, I agree current OpenBSD's libsa readdir implementation
> (without opendir/seekdir/closedir) is incomplete to bother
> to integrate only for ls ops.
>
> I'll integrate your patch this weekend unless
> someone provides better alternative implementation.
> ---
> Izumi Tsutsui
OK, thank you!
--
Evgeniy
Home |
Main Index |
Thread Index |
Old Index