Ignore:
Timestamp:
Dec 27, 2018, 7:38:58 PM (3 years ago)
Author:
alain
Message:

Fix several bugs in VFS to support the following
ksh commandis : cp, mv, rm, mkdir, cd, pwd

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/kernel/kernel_config.h

    r607 r610  
    3737#define DEBUG_BARRIER                     0
    3838
    39 #define DEBUG_BUSYLOCK                    1
     39#define DEBUG_BUSYLOCK                    0
    4040#define DEBUG_BUSYLOCK_THREAD_XP          0x0000000000ULL  // selected thread xptr
    4141                 
     
    8181#define DEBUG_FATFS_MOVE_PAGE             0
    8282#define DEBUG_FATFS_RELEASE_INODE         0
    83 #define DEBUG_FATFS_REMOVE_DENTRY         1
     83#define DEBUG_FATFS_REMOVE_DENTRY         0
    8484#define DEBUG_FATFS_SYNC_FAT              0
    8585#define DEBUG_FATFS_SYNC_FSINFO           0
     
    9090#define DEBUG_HAL_GPT_CREATE              0
    9191#define DEBUG_HAL_GPT_DESTROY             0
    92 
     92#define DEBUG_HAL_USPACE                  0
    9393#define DEBUG_HAL_KENTRY                  0
    9494#define DEBUG_HAL_EXCEPTIONS              0
     
    102102#define DEBUG_KMEM                        0
    103103
    104 #define DEBUG_KERNEL_INIT                 0
    105 
    106 #define DEBUG_MAPPER_GET_PAGE             1
     104#define DEBUG_KERNEL_INIT                 2
     105
     106#define DEBUG_MAPPER_GET_PAGE             0
    107107#define DEBUG_MAPPER_HANDLE_MISS          0
    108108#define DEBUG_MAPPER_MOVE_USER            0
     
    116116#define DEBUG_PROCESS_COPY_INIT           0
    117117#define DEBUG_PROCESS_DESTROY             0
     118#define DEBUG_PROCESS_FD_REGISTER         0
    118119#define DEBUG_PROCESS_GET_LOCAL_COPY      0
    119120#define DEBUG_PROCESS_INIT_CREATE         0
     
    125126#define DEBUG_PROCESS_ZERO_CREATE         0
    126127
    127 #define DEBUG_QUEUELOCK                   0
     128#define DEBUG_QUEUELOCK_TYPE              0    // lock type (0 is undefined)
    128129
    129130#define DEBUG_RPC_CLIENT_GENERIC          0
     
    132133#define DEBUG_RPC_KCM_ALLOC               0
    133134#define DEBUG_RPC_KCM_FREE                0
    134 #define DEBUG_RPC_MAPPER_rGT_PAGE         0
     135#define DEBUG_RPC_MAPPER_HANDLE_MISS      0
    135136#define DEBUG_RPC_MAPPER_MOVE_USER        0
    136137#define DEBUG_RPC_PMEM_GET_PAGES          0
     
    150151#define DEBUG_RPC_VMM_GET_VSEG            0
    151152
    152 #define DEBUG_RWLOCK                      0
     153#define DEBUG_RWLOCK_TYPE                 0    // lock type (0 is undefined)
    153154
    154155#define DEBUG_SCHED_HANDLE_SIGNALS        2
     
    169170#define DEBUG_SYS_FORK                    0
    170171#define DEBUG_SYS_GET_CONFIG              0
     172#define DEBUG_SYS_GETCWD                  0
    171173#define DEBUG_SYS_GETPID                  0
    172174#define DEBUG_SYS_ISATTY                  0
     
    174176#define DEBUG_SYS_KILL                    0
    175177#define DEBUG_SYS_OPEN                    0
     178#define DEBUG_SYS_MKDIR                   2
    176179#define DEBUG_SYS_MMAP                    0
    177180#define DEBUG_SYS_MUNMAP                  0
     
    205208#define DEBUG_VFS_ADD_CHILD               0
    206209#define DEBUG_VFS_CLOSE                   0
     210#define DEBUG_VFS_CHDIR                   0
    207211#define DEBUG_VFS_DENTRY_CREATE           0
     212#define DEBUG_VFS_FILE_CREATE             0
     213#define DEBUG_VFS_GET_PATH                0
    208214#define DEBUG_VFS_INODE_CREATE            0
    209215#define DEBUG_VFS_INODE_LOAD_ALL          0
    210 #define DEBUG_VFS_LOOKUP                  0
     216#define DEBUG_VFS_LINK                    0
     217#define DEBUG_VFS_LOOKUP                  1
    211218#define DEBUG_VFS_LSEEK                   0
     219#define DEBUG_VFS_MKDIR                   1
    212220#define DEBUG_VFS_NEW_CHILD_INIT          0
    213221#define DEBUG_VFS_OPEN                    0
    214222#define DEBUG_VFS_STAT                    0
    215 #define DEBUG_VFS_UNLINK                  1
     223#define DEBUG_VFS_UNLINK                  0
    216224
    217225#define DEBUG_VMM_CREATE_VSEG             0
     
    247255
    248256#define LOCK_THREAD_JOIN      10   // remote (B)  protect join/exit between two threads
    249 #define LOCK_VFS_MAIN         11   // remote (B)  protect vfs traversal (one per inode)
     257#define LOCK_XHTAB_STATE      11   // remote (B)  protect  a distributed xhtab state
    250258#define LOCK_CHDEV_QUEUE      12   // remote (B)  protect chdev threads waiting queue
    251259#define LOCK_CHDEV_TXT0       13   // remote (B)  protect access to kernel terminal TXT0
     
    255263#define LOCK_CONDVAR_STATE    17   // remote (B)  protect user condvar state
    256264#define LOCK_SEM_STATE        18   // remote (B)  protect user semaphore state
    257 #define LOCK_XHTAB_STATE      19   // remote (B)  protect a distributed xhatb state
     265#define LOCK_PROCESS_CWD      19   // remote (B)  protect current working directory in process
    258266
    259267#define BUSYLOCK_TYPE_MAX     20
     
    272280
    273281#define LOCK_MAPPER_STATE     30   // remote (RW) protect mapper state
    274 #define LOCK_PROCESS_CWD      31   // remote (RW) protect current working directory in process
    275 #define LOCK_VFS_INODE        32   // remote (RW) protect inode state and associated mapper
    276 #define LOCK_VFS_FILE         33   // remote (RW) protect file descriptor state
    277 #define LOCK_VMM_VSL          34   // remote (RW) protect VSL (local list of vsegs)
    278 #define LOCK_VMM_GPT          35   // remote (RW) protect GPT (local page table)
     282#define LOCK_VFS_SIZE         31   // remote (RW) protect inode state and associated mapper
     283#define LOCK_VFS_FILE         32   // remote (RW) protect file descriptor state
     284#define LOCK_VMM_VSL          33   // remote (RW) protect VSL (local list of vsegs)
     285#define LOCK_VMM_GPT          34   // remote (RW) protect GPT (local page table)
     286#define LOCK_VFS_MAIN         35   // remote (RW) protect vfs traversal (in root inode)
    279287
    280288
Note: See TracChangeset for help on using the changeset viewer.