tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: mknodat(2) device argument type change
On Sun, Oct 06, 2013 at 05:56:58PM +0000, Christos Zoulas wrote:
> In article <20131006174052.GA27386%lynche.sis.pasteur.fr@localhost>,
> Nicolas Joly <njoly%pasteur.fr@localhost> wrote:
> >
> >Hi,
> >
> >Checking syscalls.master mknodat(2) definition needs to be updated for
> >correct device argument type. It currently use uint32_t where it
> >should be dev_t ...
> >
> >460 STD RUMP { int|sys||mknodat(int fd, const char *path, \
> > mode_t mode, uint32_t dev); }
> >
> >Simply changing the argument type does not seems enough ... It, at
> >least, needs an extra special PAD argument for proper alignment :
> >
> >460 STD RUMP { int|sys||mknodat(int fd, const char *path, \
> > mode_t mode, int PAD, dev_t dev); }
> >
> >What's next ?
>
> While putting PAD there is strictly more correct, since dev_t is 64 bits now
> mknod does not do that... I would also say just make the change, because
> probably nothing uses it yet, and it is not worth it to burn a syscall
> number and add more compat code for something that has not been used...
It needs the PAD, syscalls files generation fails without it
(sysalign=1).
/bin/sh makesyscalls.sh syscalls.conf syscalls.master
syscalls.master: line 905: unexpected dev (expected <a padding argument>)
line is:
460 STD RUMP { int | sys | | mknodat ( int fd , const char *
path , mode_t mode , dev_t dev ) ; }
*** Error code 1
--
Nicolas Joly
Biology IT Center
Institut Pasteur, Paris.
Home |
Main Index |
Thread Index |
Old Index