This is the mail archive of the libc-ports@sources.redhat.com mailing list for the libc-ports project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: __xmknod on mips


-----BEGIN PGP SIGNED MESSAGE-----

Hash: SHA1



Khem Raj wrote:
> Joseph S. Myers wrote:
>> On Thu, 3 Apr 2008, Khem Raj wrote:
> 
>>> MIPS port currently has its own version of __xmknod() in
>>> sysdeps/unix/sysv/linux/mips/xmknod.c
>>> which limits the major and minor device number to 255 still. Unless mips
>>> kernel does not allow larger major and minor number, we can use the
>>> common  implementation of __xmknod () for mips.
>> I noticed this issue a while back and couldn't find any reason for the 
>> MIPS-specific implementation.  What's needed is for someone to test (on 
>> all three ABIs) a patch to remove it.


I have tested this patch on N32. There are no new regressions in glibc tests with this patch.

- -Khem

ChangeLog.mips32

2008-04-10  Khem Raj  <kraj@mvista.com>

	* sysdeps/unix/sysv/linux/mips/xmknod.c: Delete file.
-----BEGIN PGP SIGNATURE-----

Version: GnuPG v1.4.7 (MingW32)

Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org



iD8DBQFH/sF3UjbQJxVzeZQRAmA+AJ9wOMxB+g1Ad1eFfSHkJKBhdxwivwCfTWLx

7Z4yqtJ/ulgyqYzOArbWA7k=

=Ms8p

-----END PGP SIGNATURE-----

Index: sysdeps/unix/sysv/linux/mips/xmknod.c
===================================================================
--- sysdeps/unix/sysv/linux/mips/xmknod.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/* xmknod call using old-style Unix mknod system call.
-   Copyright (C) 1991, 1993, 1995, 1996, 1997, 1998, 2000, 2002, 2003
-   Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, write to the Free
-   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-   02111-1307 USA.  */
-
-#include <errno.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <sys/sysmacros.h>
-
-#include <sysdep.h>
-#include <sys/syscall.h>
-#include <bp-checks.h>
-
-/* Create a device file named PATH, with permission and special bits MODE
-   and device number DEV (which can be constructed from major and minor
-   device numbers with the `makedev' macro above).  */
-int
-__xmknod (int vers, const char *path, mode_t mode, dev_t *dev)
-{
-  unsigned long k_dev;
-
-  if (vers != _MKNOD_VER)
-    {
-      __set_errno (EINVAL);
-      return -1;
-    }
-
-  /* We must convert the value to dev_t type used by the kernel.  */
-  k_dev = ((major (*dev) & 0xff) << 8) | (minor (*dev) & 0xff);
-
-  return INLINE_SYSCALL (mknod, 3, CHECK_STRING (path), mode, k_dev);
-}
-
-weak_alias (__xmknod, _xmknod)
-libc_hidden_def (__xmknod)

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]