| tag | line | file | source code |
| dir | 59 | fs/minix/namei.c | static struct buffer_head * minix_find_entry(struct inode * dir, |
| dir | 68 | fs/minix/namei.c | if (!dir) |
| dir | 77 | fs/minix/namei.c | entries = dir->i_size / (sizeof (struct minix_dir_entry)); |
| dir | 78 | fs/minix/namei.c | if (!(block = dir->i_data[0])) |
| dir | 80 | fs/minix/namei.c | if (!(bh = bread(dir->i_dev,block))) |
| dir | 88 | fs/minix/namei.c | if (!(block = minix_bmap(dir,i/MINIX_DIR_ENTRIES_PER_BLOCK)) || |
| dir | 89 | fs/minix/namei.c | !(bh = bread(dir->i_dev,block))) { |
| dir | 106 | fs/minix/namei.c | int minix_lookup(struct inode * dir,const char * name, int len, |
| dir | 114 | fs/minix/namei.c | if (!dir) |
| dir | 116 | fs/minix/namei.c | if (!S_ISDIR(dir->i_mode)) { |
| dir | 117 | fs/minix/namei.c | iput(dir); |
| dir | 120 | fs/minix/namei.c | if (!(bh = minix_find_entry(dir,name,len,&de))) { |
| dir | 121 | fs/minix/namei.c | iput(dir); |
| dir | 126 | fs/minix/namei.c | if (!(*result = iget(dir->i_dev,ino))) { |
| dir | 127 | fs/minix/namei.c | iput(dir); |
| dir | 130 | fs/minix/namei.c | iput(dir); |
| dir | 144 | fs/minix/namei.c | static struct buffer_head * minix_add_entry(struct inode * dir, |
| dir | 152 | fs/minix/namei.c | if (!dir) |
| dir | 163 | fs/minix/namei.c | if (!(block = dir->i_data[0])) |
| dir | 165 | fs/minix/namei.c | if (!(bh = bread(dir->i_dev,block))) |
| dir | 173 | fs/minix/namei.c | block = minix_create_block(dir,i/MINIX_DIR_ENTRIES_PER_BLOCK); |
| dir | 176 | fs/minix/namei.c | if (!(bh = bread(dir->i_dev,block))) { |
| dir | 182 | fs/minix/namei.c | if (i*sizeof(struct minix_dir_entry) >= dir->i_size) { |
| dir | 184 | fs/minix/namei.c | dir->i_size = (i+1)*sizeof(struct minix_dir_entry); |
| dir | 185 | fs/minix/namei.c | dir->i_dirt = 1; |
| dir | 186 | fs/minix/namei.c | dir->i_ctime = CURRENT_TIME; |
| dir | 189 | fs/minix/namei.c | dir->i_mtime = CURRENT_TIME; |
| dir | 203 | fs/minix/namei.c | int minix_create(struct inode * dir,const char * name, int len, int mode, |
| dir | 211 | fs/minix/namei.c | if (!dir) |
| dir | 213 | fs/minix/namei.c | inode = minix_new_inode(dir->i_dev); |
| dir | 215 | fs/minix/namei.c | iput(dir); |
| dir | 221 | fs/minix/namei.c | bh = minix_add_entry(dir,name,len,&de); |
| dir | 226 | fs/minix/namei.c | iput(dir); |
| dir | 232 | fs/minix/namei.c | iput(dir); |
| dir | 237 | fs/minix/namei.c | int minix_mknod(struct inode * dir, const char * name, int len, int mode, int rdev) |
| dir | 243 | fs/minix/namei.c | if (!dir) |
| dir | 245 | fs/minix/namei.c | bh = minix_find_entry(dir,name,len,&de); |
| dir | 248 | fs/minix/namei.c | iput(dir); |
| dir | 251 | fs/minix/namei.c | inode = minix_new_inode(dir->i_dev); |
| dir | 253 | fs/minix/namei.c | iput(dir); |
| dir | 273 | fs/minix/namei.c | bh = minix_add_entry(dir,name,len,&de); |
| dir | 278 | fs/minix/namei.c | iput(dir); |
| dir | 284 | fs/minix/namei.c | iput(dir); |
| dir | 289 | fs/minix/namei.c | int minix_mkdir(struct inode * dir, const char * name, int len, int mode) |
| dir | 295 | fs/minix/namei.c | bh = minix_find_entry(dir,name,len,&de); |
| dir | 298 | fs/minix/namei.c | iput(dir); |
| dir | 301 | fs/minix/namei.c | inode = minix_new_inode(dir->i_dev); |
| dir | 303 | fs/minix/namei.c | iput(dir); |
| dir | 310 | fs/minix/namei.c | iput(dir); |
| dir | 318 | fs/minix/namei.c | iput(dir); |
| dir | 328 | fs/minix/namei.c | de->inode = dir->i_ino; |
| dir | 335 | fs/minix/namei.c | bh = minix_add_entry(dir,name,len,&de); |
| dir | 337 | fs/minix/namei.c | iput(dir); |
| dir | 344 | fs/minix/namei.c | dir->i_nlink++; |
| dir | 345 | fs/minix/namei.c | dir->i_dirt = 1; |
| dir | 346 | fs/minix/namei.c | iput(dir); |
| dir | 399 | fs/minix/namei.c | int minix_rmdir(struct inode * dir, const char * name, int len) |
| dir | 407 | fs/minix/namei.c | bh = minix_find_entry(dir,name,len,&de); |
| dir | 412 | fs/minix/namei.c | if (!(inode = iget(dir->i_dev, de->inode))) |
| dir | 414 | fs/minix/namei.c | if ((dir->i_mode & S_ISVTX) && current->euid && |
| dir | 417 | fs/minix/namei.c | if (inode->i_dev != dir->i_dev) |
| dir | 419 | fs/minix/namei.c | if (inode == dir) /* we may not delete ".", but "../dir" is ok */ |
| dir | 439 | fs/minix/namei.c | dir->i_nlink--; |
| dir | 440 | fs/minix/namei.c | dir->i_ctime = dir->i_mtime = CURRENT_TIME; |
| dir | 441 | fs/minix/namei.c | dir->i_dirt=1; |
| dir | 444 | fs/minix/namei.c | iput(dir); |
| dir | 450 | fs/minix/namei.c | int minix_unlink(struct inode * dir, const char * name, int len) |
| dir | 459 | fs/minix/namei.c | bh = minix_find_entry(dir,name,len,&de); |
| dir | 462 | fs/minix/namei.c | if (!(inode = iget(dir->i_dev, de->inode))) |
| dir | 465 | fs/minix/namei.c | if ((dir->i_mode & S_ISVTX) && !suser() && |
| dir | 467 | fs/minix/namei.c | current->euid != dir->i_uid) |
| dir | 485 | fs/minix/namei.c | iput(dir); |
| dir | 489 | fs/minix/namei.c | int minix_symlink(struct inode * dir, const char * name, int len, const char * symname) |
| dir | 497 | fs/minix/namei.c | if (!(inode = minix_new_inode(dir->i_dev))) { |
| dir | 498 | fs/minix/namei.c | iput(dir); |
| dir | 504 | fs/minix/namei.c | iput(dir); |
| dir | 512 | fs/minix/namei.c | iput(dir); |
| dir | 526 | fs/minix/namei.c | bh = minix_find_entry(dir,name,len,&de); |
| dir | 532 | fs/minix/namei.c | iput(dir); |
| dir | 535 | fs/minix/namei.c | bh = minix_add_entry(dir,name,len,&de); |
| dir | 540 | fs/minix/namei.c | iput(dir); |
| dir | 546 | fs/minix/namei.c | iput(dir); |
| dir | 551 | fs/minix/namei.c | int minix_link(struct inode * oldinode, struct inode * dir, const char * name, int len) |
| dir | 558 | fs/minix/namei.c | iput(dir); |
| dir | 561 | fs/minix/namei.c | bh = minix_find_entry(dir,name,len,&de); |
| dir | 564 | fs/minix/namei.c | iput(dir); |
| dir | 568 | fs/minix/namei.c | bh = minix_add_entry(dir,name,len,&de); |
| dir | 570 | fs/minix/namei.c | iput(dir); |
| dir | 577 | fs/minix/namei.c | iput(dir); |
| dir | 40 | fs/minix/symlink.c | static struct inode * minix_follow_link(struct inode * dir, struct inode * inode) |
| dir | 45 | fs/minix/symlink.c | if (!dir) { |
| dir | 46 | fs/minix/symlink.c | dir = current->root; |
| dir | 47 | fs/minix/symlink.c | dir->i_count++; |
| dir | 50 | fs/minix/symlink.c | iput(dir); |
| dir | 54 | fs/minix/symlink.c | iput(dir); |
| dir | 60 | fs/minix/symlink.c | iput(dir); |
| dir | 67 | fs/minix/symlink.c | inode = _namei(bh->b_data,dir,1); |
| dir | 60 | fs/namei.c | int lookup(struct inode * dir,const char * name, int len, |
| dir | 67 | fs/namei.c | if (dir == current->root) |
| dir | 69 | fs/namei.c | else if ((sb = dir->i_sb) && (dir == sb->s_mounted)) { |
| dir | 70 | fs/namei.c | sb = dir->i_sb; |
| dir | 71 | fs/namei.c | iput(dir); |
| dir | 72 | fs/namei.c | if (dir = sb->s_covered) |
| dir | 73 | fs/namei.c | dir->i_count++; |
| dir | 76 | fs/namei.c | if (!dir) |
| dir | 78 | fs/namei.c | if (!permission(dir,MAY_EXEC)) { |
| dir | 79 | fs/namei.c | iput(dir); |
| dir | 83 | fs/namei.c | *result = dir; |
| dir | 86 | fs/namei.c | if (!dir->i_op || !dir->i_op->lookup) { |
| dir | 87 | fs/namei.c | iput(dir); |
| dir | 90 | fs/namei.c | return dir->i_op->lookup(dir,name,len,result); |
| dir | 93 | fs/namei.c | struct inode * follow_link(struct inode * dir, struct inode * inode) |
| dir | 95 | fs/namei.c | if (!dir || !inode) { |
| dir | 96 | fs/namei.c | iput(dir); |
| dir | 101 | fs/namei.c | iput(dir); |
| dir | 104 | fs/namei.c | return inode->i_op->follow_link(dir,inode); |
| dir | 200 | fs/namei.c | struct inode * dir, *inode; |
| dir | 206 | fs/namei.c | if (!(dir = dir_namei(pathname,&namelen,&basename,NULL))) |
| dir | 210 | fs/namei.c | *res_inode=dir; |
| dir | 213 | fs/namei.c | iput(dir); |
| dir | 216 | fs/namei.c | dir->i_count++; /* lookup eats the dir */ |
| dir | 217 | fs/namei.c | error = lookup(dir,basename,namelen,&inode); |
| dir | 220 | fs/namei.c | iput(dir); |
| dir | 223 | fs/namei.c | if (!permission(dir,MAY_WRITE)) { |
| dir | 224 | fs/namei.c | iput(dir); |
| dir | 227 | fs/namei.c | if (!dir->i_op || !dir->i_op->create) { |
| dir | 228 | fs/namei.c | iput(dir); |
| dir | 231 | fs/namei.c | return dir->i_op->create(dir,basename,namelen,mode,res_inode); |
| dir | 234 | fs/namei.c | iput(dir); |
| dir | 238 | fs/namei.c | if (!(inode = follow_link(dir,inode))) |
| dir | 259 | fs/namei.c | struct inode * dir; |
| dir | 263 | fs/namei.c | if (!(dir = dir_namei(filename,&namelen,&basename, NULL))) |
| dir | 266 | fs/namei.c | iput(dir); |
| dir | 269 | fs/namei.c | if (!permission(dir,MAY_WRITE)) { |
| dir | 270 | fs/namei.c | iput(dir); |
| dir | 273 | fs/namei.c | if (!dir->i_op || !dir->i_op->mknod) { |
| dir | 274 | fs/namei.c | iput(dir); |
| dir | 277 | fs/namei.c | return dir->i_op->mknod(dir,basename,namelen,mode,dev); |
| dir | 284 | fs/namei.c | struct inode * dir; |
| dir | 286 | fs/namei.c | if (!(dir = dir_namei(pathname,&namelen,&basename, NULL))) |
| dir | 289 | fs/namei.c | iput(dir); |
| dir | 292 | fs/namei.c | if (!permission(dir,MAY_WRITE)) { |
| dir | 293 | fs/namei.c | iput(dir); |
| dir | 296 | fs/namei.c | if (!dir->i_op || !dir->i_op->mkdir) { |
| dir | 297 | fs/namei.c | iput(dir); |
| dir | 300 | fs/namei.c | return dir->i_op->mkdir(dir,basename,namelen,mode); |
| dir | 307 | fs/namei.c | struct inode * dir; |
| dir | 309 | fs/namei.c | if (!(dir = dir_namei(name,&namelen,&basename, NULL))) |
| dir | 312 | fs/namei.c | iput(dir); |
| dir | 315 | fs/namei.c | if (!permission(dir,MAY_WRITE)) { |
| dir | 316 | fs/namei.c | iput(dir); |
| dir | 319 | fs/namei.c | if (!dir->i_op || !dir->i_op->rmdir) { |
| dir | 320 | fs/namei.c | iput(dir); |
| dir | 323 | fs/namei.c | return dir->i_op->rmdir(dir,basename,namelen); |
| dir | 330 | fs/namei.c | struct inode * dir; |
| dir | 332 | fs/namei.c | if (!(dir = dir_namei(name,&namelen,&basename, NULL))) |
| dir | 335 | fs/namei.c | iput(dir); |
| dir | 338 | fs/namei.c | if (!permission(dir,MAY_WRITE)) { |
| dir | 339 | fs/namei.c | iput(dir); |
| dir | 342 | fs/namei.c | if (!dir->i_op || !dir->i_op->unlink) { |
| dir | 343 | fs/namei.c | iput(dir); |
| dir | 346 | fs/namei.c | return dir->i_op->unlink(dir,basename,namelen); |
| dir | 351 | fs/namei.c | struct inode * dir; |
| dir | 355 | fs/namei.c | dir = dir_namei(newname,&namelen,&basename, NULL); |
| dir | 356 | fs/namei.c | if (!dir) |
| dir | 359 | fs/namei.c | iput(dir); |
| dir | 362 | fs/namei.c | if (!permission(dir,MAY_WRITE)) { |
| dir | 363 | fs/namei.c | iput(dir); |
| dir | 366 | fs/namei.c | if (!dir->i_op || !dir->i_op->symlink) { |
| dir | 367 | fs/namei.c | iput(dir); |
| dir | 370 | fs/namei.c | return dir->i_op->symlink(dir,basename,namelen,oldname); |
| dir | 375 | fs/namei.c | struct inode * oldinode, * dir; |
| dir | 382 | fs/namei.c | dir = dir_namei(newname,&namelen,&basename, NULL); |
| dir | 383 | fs/namei.c | if (!dir) { |
| dir | 389 | fs/namei.c | iput(dir); |
| dir | 392 | fs/namei.c | if (dir->i_dev != oldinode->i_dev) { |
| dir | 393 | fs/namei.c | iput(dir); |
| dir | 397 | fs/namei.c | if (!permission(dir,MAY_WRITE)) { |
| dir | 398 | fs/namei.c | iput(dir); |
| dir | 402 | fs/namei.c | if (!dir->i_op || !dir->i_op->link) { |
| dir | 403 | fs/namei.c | iput(dir); |
| dir | 407 | fs/namei.c | return dir->i_op->link(oldinode, dir, basename, namelen); |
| dir | 48 | include/linux/minix_fs.h | extern int minix_lookup(struct inode * dir,const char * name, int len, |
| dir | 50 | include/linux/minix_fs.h | extern int minix_create(struct inode * dir,const char * name, int len, int mode, |
| dir | 52 | include/linux/minix_fs.h | extern int minix_mkdir(struct inode * dir, const char * name, int len, int mode); |
| dir | 53 | include/linux/minix_fs.h | extern int minix_rmdir(struct inode * dir, const char * name, int len); |
| dir | 54 | include/linux/minix_fs.h | extern int minix_unlink(struct inode * dir, const char * name, int len); |
| dir | 57 | include/linux/minix_fs.h | extern int minix_link(struct inode * oldinode, struct inode * dir, const char * name, int len); |
| dir | 58 | include/linux/minix_fs.h | extern int minix_mknod(struct inode * dir, const char * name, int len, int mode, int rdev); |
| dir | 72 | include/sys/kd.h | char dir; /* direction in vs out */ |
| dir | 111 | include/unistd.h | int mount(const char * specialfile, const char * dir, const char * type, int rwflag); |
| dir | 79 | mm/memory.c | unsigned long * dir, nr; |
| dir | 86 | mm/memory.c | dir = (unsigned long *) ((from>>20) & 0xffc); /* _pg_dir = 0 */ |
| dir | 87 | mm/memory.c | for ( ; size-->0 ; dir++) { |
| dir | 88 | mm/memory.c | if (!(page_dir = *dir)) |
| dir | 90 | mm/memory.c | *dir = 0; |
| dir | 196 | mm/memory.c | unsigned long *page_table, *dir; |
| dir | 204 | mm/memory.c | dir = (unsigned long *) ((from >> 20) & 0xffc); /* _pg_dir = 0 */ |
| dir | 209 | mm/memory.c | for ( ; size > 0; ++dir, size -= pcnt, |
| dir | 211 | mm/memory.c | if (!(page_dir = *dir)) { |
| dir | 236 | mm/memory.c | *dir = 0; |
| dir | 263 | mm/memory.c | unsigned long *page_table, *dir; |
| dir | 268 | mm/memory.c | dir = (unsigned long *) ((from >> 20) & 0xffc); /* _pg_dir = 0 */ |
| dir | 275 | mm/memory.c | if (!(1 & *dir)) { |
| dir | 280 | mm/memory.c | *dir++ = ((unsigned long) page_table) | 7; |
| dir | 283 | mm/memory.c | page_table = (unsigned long *)(0xfffff000 & *dir++); |