Re: Current git tree broke busybox start-stop-daemon
- From: Alexey Dobriyan <adobriyan@xxxxxxxxx>
- Date: Wed, 16 Apr 2008 23:47:09 +0400
On Wed, Apr 16, 2008 at 08:34:17PM +0100, Al Viro wrote:
On Wed, Apr 16, 2008 at 11:00:57PM +0400, Alexey Dobriyan wrote:
On Wed, Apr 16, 2008 at 07:25:02PM +0200, Joakim Tjernlund wrote:
open("/proc/1/stat", O_RDONLY|O_LARGEFILE) = 4
_llseek(4, 0, 0xbfb94898, SEEK_END) = -1 EINVAL (Invalid argument)
So it appears that lseek is no longer allowed for /proc/1/stat
Bug or feature?
start-stop-daemon works fine in 2.6.23
That's what happens when switching ->llseek method from NULL
(effectively, default_llseek), to seq_lseek (which rejects SEEK_END).
commit be614086a4aff163d5aa0dc160638d1193b59cde
commit ee992744ea53db0a90c986fd0a70fbbf91e7f8bd
Al, do you remember why SEEK_END was omitted back then?
Because there's no sane way to implement it?
Ugly ->index games, sigh...
Note that original cheerfully
did nothing, since it had zero ->i_size for that file. Which makes program
in question very odd - what behaviour does it rely upon?
Busybox just wants to estimate size of a file. And it knows about
zero-length /proc/*/stat .
libbb/read.c:
void *xmalloc_open_read_close(const char *filename, size_t *sizep)
{
char *buf;
size_t size = sizep ? *sizep : INT_MAX;
int fd;
off_t len;
fd = xopen(filename, O_RDONLY);
/* /proc/N/stat files report len 0 here */
/* In order to make such files readable, we add small const */
len = xlseek(fd, 0, SEEK_END) | 0x3ff; /* + up to 1k */
...
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
- References:
- Current git tree broke busybox start-stop-daemon
- From: Joakim Tjernlund
- Re: Current git tree broke busybox start-stop-daemon
- From: Alexey Dobriyan
- Re: Current git tree broke busybox start-stop-daemon
- From: Al Viro
- Current git tree broke busybox start-stop-daemon
- Prev by Date: Re: [BUG/PATCH] x86 mmiotrace: dynamically disable non-boot CPUs
- Next by Date: [PATCH -mm 1/3] misc,acpi,backlight: Compal Laptop Extras - add entry to MAINTAINERS
- Previous by thread: Re: Current git tree broke busybox start-stop-daemon
- Next by thread: Current git tree broke busybox start-stop-daemon
- Index(es):
Relevant Pages
|