diff options
| -rw-r--r-- | init/initramfs.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/init/initramfs.c b/init/initramfs.c index 640557788026..f6f4a1e4cd54 100644 --- a/init/initramfs.c +++ b/init/initramfs.c | |||
| @@ -291,16 +291,6 @@ static int __init do_reset(void) | |||
| 291 | return 1; | 291 | return 1; |
| 292 | } | 292 | } |
| 293 | 293 | ||
| 294 | static int __init maybe_link(void) | ||
| 295 | { | ||
| 296 | if (nlink >= 2) { | ||
| 297 | char *old = find_link(major, minor, ino, mode, collected); | ||
| 298 | if (old) | ||
| 299 | return (ksys_link(old, collected) < 0) ? -1 : 1; | ||
| 300 | } | ||
| 301 | return 0; | ||
| 302 | } | ||
| 303 | |||
| 304 | static void __init clean_path(char *path, umode_t fmode) | 294 | static void __init clean_path(char *path, umode_t fmode) |
| 305 | { | 295 | { |
| 306 | struct kstat st; | 296 | struct kstat st; |
| @@ -313,6 +303,18 @@ static void __init clean_path(char *path, umode_t fmode) | |||
| 313 | } | 303 | } |
| 314 | } | 304 | } |
| 315 | 305 | ||
| 306 | static int __init maybe_link(void) | ||
| 307 | { | ||
| 308 | if (nlink >= 2) { | ||
| 309 | char *old = find_link(major, minor, ino, mode, collected); | ||
| 310 | if (old) { | ||
| 311 | clean_path(collected, 0); | ||
| 312 | return (ksys_link(old, collected) < 0) ? -1 : 1; | ||
| 313 | } | ||
| 314 | } | ||
| 315 | return 0; | ||
| 316 | } | ||
| 317 | |||
| 316 | static __initdata int wfd; | 318 | static __initdata int wfd; |
| 317 | 319 | ||
| 318 | static int __init do_name(void) | 320 | static int __init do_name(void) |
