Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 5 May 2006 16:10:45 +0000 (UTC)
From:      Doug Ambrisko <ambrisko@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/alpha/linux linux_sysvec.c src/sys/compat/linux linux_stats.c linux_util.c linux_util.h src/sys/i386/linux linux_sysvec.c src/sys/modules/linux Makefile src/sys/compat/linprocfs linprocfs.c
Message-ID:  <200605051610.k45GAjdo030198@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
ambrisko    2006-05-05 16:10:45 UTC

  FreeBSD src repository

  Modified files:
    sys/alpha/linux      linux_sysvec.c 
    sys/compat/linux     linux_stats.c linux_util.c linux_util.h 
    sys/i386/linux       linux_sysvec.c 
    sys/modules/linux    Makefile 
    sys/compat/linprocfs linprocfs.c 
  Log:
  Enhance the Linux emulation layer to make MegaRAID SAS managements tool happy.
  Add back in a scheme to emulate old type major/minor numbers via hooks into
  stat, linprocfs to return major/minors that Linux app's expect.  Currently
  only /dev/null is always registered.  Drivers can register via the Linux
  type shim similar to the ioctl shim but by using
  linux_device_register_handler/linux_device_unregister_handler functions.
  The structure is:
  
      struct linux_device_handler {
          char    *bsd_driver_name;
          char    *linux_driver_name;
          char    *bsd_device_name;
          char    *linux_device_name;
          int     linux_major;
          int     linux_minor;
          int     linux_char_device;
      };
  
  Linprocfs uses this to display the major number of the driver.  The
  soon to be available linsysfs will use it to fill in the driver name.
  Linux_stat uses it to translate the major/minor into Linux type values.
  
  Note major numbers are dynamically assigned via passing in a -1 for
  the major number so we don't need to keep track of them.
  
  This is somewhat needed due to us switching to our devfs.  MegaCli
  will not run until I add in the linsysfs and mfi Linux compat changes.
  
  Sponsored by:   IronPort Systems
  
  Revision  Changes    Path
  1.100     +6 -0      src/sys/alpha/linux/linux_sysvec.c
  1.92      +37 -11    src/sys/compat/linprocfs/linprocfs.c
  1.80      +59 -5     src/sys/compat/linux/linux_stats.c
  1.30      +137 -0    src/sys/compat/linux/linux_util.c
  1.27      +17 -0     src/sys/compat/linux/linux_util.h
  1.144     +6 -0      src/sys/i386/linux/linux_sysvec.c
  1.67      +1 -1      src/sys/modules/linux/Makefile



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200605051610.k45GAjdo030198>