1*4882a593SmuzhiyunFrom 14d4dbd293c75bc81a0dde6e678f9bbefb40b6f1 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Andrea Adami <andrea.adami@gmail.com> 3*4882a593SmuzhiyunDate: Tue, 17 Apr 2018 13:48:25 +0200 4*4882a593SmuzhiyunSubject: [PATCH] fs2dt.c: work around missing getline() 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunThis simple case can be rewrtten with fgets() 7*4882a593Smuzhiyun 8*4882a593SmuzhiyunFix 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun fs2dt.c: In function 'dt_copy_old_root_param': 11*4882a593Smuzhiyun fs2dt.c:541:6: warning: implicit declaration of function 'getline' 12*4882a593Smuzhiyun 13*4882a593SmuzhiyunUpstream-Status: Inappropriate [klibc specific] 14*4882a593SmuzhiyunSigned-off-by: Andrea Adami <andrea.adami@gmail.com> 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun--- 17*4882a593Smuzhiyun kexec/fs2dt.c | 8 ++++++++ 18*4882a593Smuzhiyun 1 file changed, 8 insertions(+) 19*4882a593Smuzhiyun 20*4882a593Smuzhiyundiff --git a/kexec/fs2dt.c b/kexec/fs2dt.c 21*4882a593Smuzhiyunindex 07a5e2f..d635636 100644 22*4882a593Smuzhiyun--- a/kexec/fs2dt.c 23*4882a593Smuzhiyun+++ b/kexec/fs2dt.c 24*4882a593Smuzhiyun@@ -531,6 +531,9 @@ static void dt_copy_old_root_param(void) 25*4882a593Smuzhiyun char *last_cmdline = NULL; 26*4882a593Smuzhiyun char *p, *old_param; 27*4882a593Smuzhiyun size_t len = 0; 28*4882a593Smuzhiyun+#ifdef __KLIBC__ 29*4882a593Smuzhiyun+ char buf[512]; 30*4882a593Smuzhiyun+#endif 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun strcpy(filename, pathname); 33*4882a593Smuzhiyun strcat(filename, "bootargs"); 34*4882a593Smuzhiyun@@ -538,8 +541,13 @@ static void dt_copy_old_root_param(void) 35*4882a593Smuzhiyun if (!fp) 36*4882a593Smuzhiyun return; 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun+#ifndef __KLIBC__ 39*4882a593Smuzhiyun if (getline(&last_cmdline, &len, fp) == -1) 40*4882a593Smuzhiyun die("unable to read %s\n", filename); 41*4882a593Smuzhiyun+#else 42*4882a593Smuzhiyun+ last_cmdline = fgets(buf, 200, fp); 43*4882a593Smuzhiyun+ last_cmdline[strlen(last_cmdline) - 1] = '\0'; 44*4882a593Smuzhiyun+#endif 45*4882a593Smuzhiyun 46*4882a593Smuzhiyun p = strstr(last_cmdline, "root="); 47*4882a593Smuzhiyun if (p) { 48