----- Original Message ----- > Sorry, I made some mistake. > > At 2012-4-11 17:06, qiaonuohan wrote: > > > > what is struct nsproxy? Or is there any symbol referring to ipc_ns? > > I want to know how does the kernel get struct ipc_ids. the previous and > the hind kernel uses current->nsproxy->ipc_ns to get the pointer to > struct ipc_namespace and then use a macro shm_ids to get struct ipc_ids. > What about this kernel? It does the same thing. But in the failure case, it appears that the task_struct.nsproxy pointer that you are using is NULL: > > > > (c) On this 2.6.36-0.16.rc3.git0.fc15 Fedora kernel, it shows: > > > > ------ Shared Memory Segments ------ > > KEY SHMID UID PERMS BYTES NATTCH > > STATUS > > ipcs: invalid kernel virtual address: 10 type: "nsproxy.ipc_ns" > > >> (d) On *all* RHEL4 2.6.9-era and SLES9 2.6.5-era kernels, the > >> command > >> fail like this: > >> > >> ------ Shared Memory Segments ------ > >> KEY SHMID UID PERMS BYTES NATTCH STATUS > >> ipcs: invalid structure member offset: ipc_id_ary_p > >> FILE: ipcs.c LINE: 540 FUNCTION: ipc_search_array() > >> > >> or this: > >> > >> ------ Shared Memory Segments ------ > >> KEY SHMID UID PERMS BYTES NATTCH STATUS > >> (none allocated)------ Semaphore Arrays -------- > >> KEY SEMID UID PERMS NSEMS > >> ipcs: invalid structure member offset: ipc_id_ary_p > >> FILE: ipcs.c LINE: 540 FUNCTION: ipc_search_array() > >> > > > > what is struct ipc_id? And what is entries in struct ipc_id or something > > similar to it? > > I mean struct ipc_ids, not ipc_id. RHEL4/linux-2.6.9: crash> ipc_ids struct ipc_ids { int size; int in_use; int max_id; short unsigned int seq; short unsigned int seq_max; struct semaphore sem; struct ipc_id *entries; } SIZE: 56 crash> Dave -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility