Changeset 223


Ignore:
Timestamp:
Mar 3, 2009, 10:01:17 PM (16 years ago)
Author:
katerina
Message:

Allow to switch off check of PCI expansion ROMs (ticket #149).

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/docs/Changelog

    r221 r223  
    1 2.5.3:
     12.5.4:
     2        * option KernelCheckPCI to switch off check of PCI expansion ROMs
     3       
     42.5.3 (25-02-2009):
    25        * disable dnmalloc on MacOS X, doesn't work properly
    36        * stat -> lstat in sh_unix_file_exists (OS X nameforks, report
  • trunk/include/sh_kern.h

    r140 r223  
    1616int sh_kern_set_timer    (const char * c);
    1717int sh_kern_set_idt      (const char * c);
     18int sh_kern_set_pci      (const char * c);
    1819int sh_kern_set_sct_addr (const char * c);
    1920int sh_kern_set_sc_addr  (const char * c);
  • trunk/src/sh_kern.c

    r192 r223  
    8686    N_("kernelcheckidt"),
    8787    sh_kern_set_idt
     88  },
     89  {
     90    N_("kernelcheckpci"),
     91    sh_kern_set_pci
    8892  },
    8993  {
     
    120124static int     ShKernDelay    = 100; /* milliseconds */
    121125static int     ShKernIDT      = S_TRUE;
     126static int     ShKernPCI      = S_TRUE;
    122127
    123128/* The address of system_call
     
    979984       */
    980985      fd = open ( pcipath, O_RDWR );
    981       do {
    982         status = write( fd, "1", 1 );
    983       } while (status < 0 && errno == EINTR);
    984       close ( fd );
    985 
    986       check_rom(pcipath, name);
    987 
    988       fd = open ( pcipath, O_RDWR );
    989       do {
    990         status = write( fd, "0", 1 );
    991       } while (status < 0 && errno == EINTR);
    992       close ( fd );
     986      if (fd)
     987        {
     988          do {
     989            status = write( fd, "1", 1 );
     990          } while (status < 0 && errno == EINTR);
     991          close ( fd );
     992
     993          if (status > 0)
     994            {
     995              check_rom(pcipath, name);
     996             
     997              fd = open ( pcipath, O_RDWR );
     998              if (fd)
     999                {
     1000                  do {
     1001                    status = write( fd, "0", 1 );
     1002                  } while (status < 0 && errno == EINTR);
     1003                  close ( fd );
     1004                }
     1005            }
     1006        }
    9931007    }
    9941008  return;
     
    10011015  DIR * df;
    10021016  struct dirent * entry;
     1017
     1018  if (ShKernPCI != S_TRUE)
     1019    return;
    10031020
    10041021  sl_strlcpy(pci_dir, SYS_BUS_PCI, sizeof(pci_dir));
     
    10281045      closedir(df);
    10291046    }
     1047  return;
    10301048}
    10311049
     
    19301948}
    19311949
     1950int sh_kern_set_pci (const char * c)
     1951{
     1952  int i;
     1953  SL_ENTER(_("sh_kern_set_pci"));
     1954  i = sh_util_flagval(c, &ShKernPCI);
     1955  SL_RETURN(i, _("sh_kern_set_pci"));
     1956}
     1957
    19321958int sh_kern_set_sc_addr (const char * c)
    19331959{
  • trunk/test/testhash.sh

    r203 r223  
    3737        fi
    3838        #
    39         ${TOP_SRCDIR}/configure --quiet $TRUST --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$RCFILE --with-log-file=$LOGFILE --with-pid-file=$PW_DIR/.samhain_lock --with-data-file=$PW_DIR/.samhain_file --enable-debug
     39        ${TOP_SRCDIR}/configure --quiet $TRUST --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$RCFILE --with-log-file=$LOGFILE --with-pid-file=$PW_DIR/.samhain_lock --with-data-file=$PW_DIR/.samhain_file --enable-debug 
    4040        #
    4141        fail=0
Note: See TracChangeset for help on using the changeset viewer.