aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ufs/super.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/ufs/super.c')
-rw-r--r--fs/ufs/super.c304
1 files changed, 152 insertions, 152 deletions
diff --git a/fs/ufs/super.c b/fs/ufs/super.c
index b879f1ba3439..da73801301d5 100644
--- a/fs/ufs/super.c
+++ b/fs/ufs/super.c
@@ -65,7 +65,6 @@
65 * Evgeniy Dushistov <dushistov@mail.ru>, 2007 65 * Evgeniy Dushistov <dushistov@mail.ru>, 2007
66 */ 66 */
67 67
68
69#include <linux/exportfs.h> 68#include <linux/exportfs.h>
70#include <linux/module.h> 69#include <linux/module.h>
71#include <linux/bitops.h> 70#include <linux/bitops.h>
@@ -172,73 +171,73 @@ static void ufs_print_super_stuff(struct super_block *sb,
172{ 171{
173 u32 magic = fs32_to_cpu(sb, usb3->fs_magic); 172 u32 magic = fs32_to_cpu(sb, usb3->fs_magic);
174 173
175 printk("ufs_print_super_stuff\n"); 174 pr_debug("ufs_print_super_stuff\n");
176 printk(" magic: 0x%x\n", magic); 175 pr_debug(" magic: 0x%x\n", magic);
177 if (fs32_to_cpu(sb, usb3->fs_magic) == UFS2_MAGIC) { 176 if (fs32_to_cpu(sb, usb3->fs_magic) == UFS2_MAGIC) {
178 printk(" fs_size: %llu\n", (unsigned long long) 177 pr_debug(" fs_size: %llu\n", (unsigned long long)
179 fs64_to_cpu(sb, usb3->fs_un1.fs_u2.fs_size)); 178 fs64_to_cpu(sb, usb3->fs_un1.fs_u2.fs_size));
180 printk(" fs_dsize: %llu\n", (unsigned long long) 179 pr_debug(" fs_dsize: %llu\n", (unsigned long long)
181 fs64_to_cpu(sb, usb3->fs_un1.fs_u2.fs_dsize)); 180 fs64_to_cpu(sb, usb3->fs_un1.fs_u2.fs_dsize));
182 printk(" bsize: %u\n", 181 pr_debug(" bsize: %u\n",
183 fs32_to_cpu(sb, usb1->fs_bsize)); 182 fs32_to_cpu(sb, usb1->fs_bsize));
184 printk(" fsize: %u\n", 183 pr_debug(" fsize: %u\n",
185 fs32_to_cpu(sb, usb1->fs_fsize)); 184 fs32_to_cpu(sb, usb1->fs_fsize));
186 printk(" fs_volname: %s\n", usb2->fs_un.fs_u2.fs_volname); 185 pr_debug(" fs_volname: %s\n", usb2->fs_un.fs_u2.fs_volname);
187 printk(" fs_sblockloc: %llu\n", (unsigned long long) 186 pr_debug(" fs_sblockloc: %llu\n", (unsigned long long)
188 fs64_to_cpu(sb, usb2->fs_un.fs_u2.fs_sblockloc)); 187 fs64_to_cpu(sb, usb2->fs_un.fs_u2.fs_sblockloc));
189 printk(" cs_ndir(No of dirs): %llu\n", (unsigned long long) 188 pr_debug(" cs_ndir(No of dirs): %llu\n", (unsigned long long)
190 fs64_to_cpu(sb, usb2->fs_un.fs_u2.cs_ndir)); 189 fs64_to_cpu(sb, usb2->fs_un.fs_u2.cs_ndir));
191 printk(" cs_nbfree(No of free blocks): %llu\n", 190 pr_debug(" cs_nbfree(No of free blocks): %llu\n",
192 (unsigned long long) 191 (unsigned long long)
193 fs64_to_cpu(sb, usb2->fs_un.fs_u2.cs_nbfree)); 192 fs64_to_cpu(sb, usb2->fs_un.fs_u2.cs_nbfree));
194 printk(KERN_INFO" cs_nifree(Num of free inodes): %llu\n", 193 pr_info(" cs_nifree(Num of free inodes): %llu\n",
195 (unsigned long long) 194 (unsigned long long)
196 fs64_to_cpu(sb, usb3->fs_un1.fs_u2.cs_nifree)); 195 fs64_to_cpu(sb, usb3->fs_un1.fs_u2.cs_nifree));
197 printk(KERN_INFO" cs_nffree(Num of free frags): %llu\n", 196 pr_info(" cs_nffree(Num of free frags): %llu\n",
198 (unsigned long long) 197 (unsigned long long)
199 fs64_to_cpu(sb, usb3->fs_un1.fs_u2.cs_nffree)); 198 fs64_to_cpu(sb, usb3->fs_un1.fs_u2.cs_nffree));
200 printk(KERN_INFO" fs_maxsymlinklen: %u\n", 199 pr_info(" fs_maxsymlinklen: %u\n",
201 fs32_to_cpu(sb, usb3->fs_un2.fs_44.fs_maxsymlinklen)); 200 fs32_to_cpu(sb, usb3->fs_un2.fs_44.fs_maxsymlinklen));
202 } else { 201 } else {
203 printk(" sblkno: %u\n", fs32_to_cpu(sb, usb1->fs_sblkno)); 202 pr_debug(" sblkno: %u\n", fs32_to_cpu(sb, usb1->fs_sblkno));
204 printk(" cblkno: %u\n", fs32_to_cpu(sb, usb1->fs_cblkno)); 203 pr_debug(" cblkno: %u\n", fs32_to_cpu(sb, usb1->fs_cblkno));
205 printk(" iblkno: %u\n", fs32_to_cpu(sb, usb1->fs_iblkno)); 204 pr_debug(" iblkno: %u\n", fs32_to_cpu(sb, usb1->fs_iblkno));
206 printk(" dblkno: %u\n", fs32_to_cpu(sb, usb1->fs_dblkno)); 205 pr_debug(" dblkno: %u\n", fs32_to_cpu(sb, usb1->fs_dblkno));
207 printk(" cgoffset: %u\n", 206 pr_debug(" cgoffset: %u\n",
208 fs32_to_cpu(sb, usb1->fs_cgoffset)); 207 fs32_to_cpu(sb, usb1->fs_cgoffset));
209 printk(" ~cgmask: 0x%x\n", 208 pr_debug(" ~cgmask: 0x%x\n",
210 ~fs32_to_cpu(sb, usb1->fs_cgmask)); 209 ~fs32_to_cpu(sb, usb1->fs_cgmask));
211 printk(" size: %u\n", fs32_to_cpu(sb, usb1->fs_size)); 210 pr_debug(" size: %u\n", fs32_to_cpu(sb, usb1->fs_size));
212 printk(" dsize: %u\n", fs32_to_cpu(sb, usb1->fs_dsize)); 211 pr_debug(" dsize: %u\n", fs32_to_cpu(sb, usb1->fs_dsize));
213 printk(" ncg: %u\n", fs32_to_cpu(sb, usb1->fs_ncg)); 212 pr_debug(" ncg: %u\n", fs32_to_cpu(sb, usb1->fs_ncg));
214 printk(" bsize: %u\n", fs32_to_cpu(sb, usb1->fs_bsize)); 213 pr_debug(" bsize: %u\n", fs32_to_cpu(sb, usb1->fs_bsize));
215 printk(" fsize: %u\n", fs32_to_cpu(sb, usb1->fs_fsize)); 214 pr_debug(" fsize: %u\n", fs32_to_cpu(sb, usb1->fs_fsize));
216 printk(" frag: %u\n", fs32_to_cpu(sb, usb1->fs_frag)); 215 pr_debug(" frag: %u\n", fs32_to_cpu(sb, usb1->fs_frag));
217 printk(" fragshift: %u\n", 216 pr_debug(" fragshift: %u\n",
218 fs32_to_cpu(sb, usb1->fs_fragshift)); 217 fs32_to_cpu(sb, usb1->fs_fragshift));
219 printk(" ~fmask: %u\n", ~fs32_to_cpu(sb, usb1->fs_fmask)); 218 pr_debug(" ~fmask: %u\n", ~fs32_to_cpu(sb, usb1->fs_fmask));
220 printk(" fshift: %u\n", fs32_to_cpu(sb, usb1->fs_fshift)); 219 pr_debug(" fshift: %u\n", fs32_to_cpu(sb, usb1->fs_fshift));
221 printk(" sbsize: %u\n", fs32_to_cpu(sb, usb1->fs_sbsize)); 220 pr_debug(" sbsize: %u\n", fs32_to_cpu(sb, usb1->fs_sbsize));
222 printk(" spc: %u\n", fs32_to_cpu(sb, usb1->fs_spc)); 221 pr_debug(" spc: %u\n", fs32_to_cpu(sb, usb1->fs_spc));
223 printk(" cpg: %u\n", fs32_to_cpu(sb, usb1->fs_cpg)); 222 pr_debug(" cpg: %u\n", fs32_to_cpu(sb, usb1->fs_cpg));
224 printk(" ipg: %u\n", fs32_to_cpu(sb, usb1->fs_ipg)); 223 pr_debug(" ipg: %u\n", fs32_to_cpu(sb, usb1->fs_ipg));
225 printk(" fpg: %u\n", fs32_to_cpu(sb, usb1->fs_fpg)); 224 pr_debug(" fpg: %u\n", fs32_to_cpu(sb, usb1->fs_fpg));
226 printk(" csaddr: %u\n", fs32_to_cpu(sb, usb1->fs_csaddr)); 225 pr_debug(" csaddr: %u\n", fs32_to_cpu(sb, usb1->fs_csaddr));
227 printk(" cssize: %u\n", fs32_to_cpu(sb, usb1->fs_cssize)); 226 pr_debug(" cssize: %u\n", fs32_to_cpu(sb, usb1->fs_cssize));
228 printk(" cgsize: %u\n", fs32_to_cpu(sb, usb1->fs_cgsize)); 227 pr_debug(" cgsize: %u\n", fs32_to_cpu(sb, usb1->fs_cgsize));
229 printk(" fstodb: %u\n", 228 pr_debug(" fstodb: %u\n",
230 fs32_to_cpu(sb, usb1->fs_fsbtodb)); 229 fs32_to_cpu(sb, usb1->fs_fsbtodb));
231 printk(" nrpos: %u\n", fs32_to_cpu(sb, usb3->fs_nrpos)); 230 pr_debug(" nrpos: %u\n", fs32_to_cpu(sb, usb3->fs_nrpos));
232 printk(" ndir %u\n", 231 pr_debug(" ndir %u\n",
233 fs32_to_cpu(sb, usb1->fs_cstotal.cs_ndir)); 232 fs32_to_cpu(sb, usb1->fs_cstotal.cs_ndir));
234 printk(" nifree %u\n", 233 pr_debug(" nifree %u\n",
235 fs32_to_cpu(sb, usb1->fs_cstotal.cs_nifree)); 234 fs32_to_cpu(sb, usb1->fs_cstotal.cs_nifree));
236 printk(" nbfree %u\n", 235 pr_debug(" nbfree %u\n",
237 fs32_to_cpu(sb, usb1->fs_cstotal.cs_nbfree)); 236 fs32_to_cpu(sb, usb1->fs_cstotal.cs_nbfree));
238 printk(" nffree %u\n", 237 pr_debug(" nffree %u\n",
239 fs32_to_cpu(sb, usb1->fs_cstotal.cs_nffree)); 238 fs32_to_cpu(sb, usb1->fs_cstotal.cs_nffree));
240 } 239 }
241 printk("\n"); 240 pr_debug("\n");
242} 241}
243 242
244/* 243/*
@@ -247,38 +246,38 @@ static void ufs_print_super_stuff(struct super_block *sb,
247static void ufs_print_cylinder_stuff(struct super_block *sb, 246static void ufs_print_cylinder_stuff(struct super_block *sb,
248 struct ufs_cylinder_group *cg) 247 struct ufs_cylinder_group *cg)
249{ 248{
250 printk("\nufs_print_cylinder_stuff\n"); 249 pr_debug("\nufs_print_cylinder_stuff\n");
251 printk("size of ucg: %zu\n", sizeof(struct ufs_cylinder_group)); 250 pr_debug("size of ucg: %zu\n", sizeof(struct ufs_cylinder_group));
252 printk(" magic: %x\n", fs32_to_cpu(sb, cg->cg_magic)); 251 pr_debug(" magic: %x\n", fs32_to_cpu(sb, cg->cg_magic));
253 printk(" time: %u\n", fs32_to_cpu(sb, cg->cg_time)); 252 pr_debug(" time: %u\n", fs32_to_cpu(sb, cg->cg_time));
254 printk(" cgx: %u\n", fs32_to_cpu(sb, cg->cg_cgx)); 253 pr_debug(" cgx: %u\n", fs32_to_cpu(sb, cg->cg_cgx));
255 printk(" ncyl: %u\n", fs16_to_cpu(sb, cg->cg_ncyl)); 254 pr_debug(" ncyl: %u\n", fs16_to_cpu(sb, cg->cg_ncyl));
256 printk(" niblk: %u\n", fs16_to_cpu(sb, cg->cg_niblk)); 255 pr_debug(" niblk: %u\n", fs16_to_cpu(sb, cg->cg_niblk));
257 printk(" ndblk: %u\n", fs32_to_cpu(sb, cg->cg_ndblk)); 256 pr_debug(" ndblk: %u\n", fs32_to_cpu(sb, cg->cg_ndblk));
258 printk(" cs_ndir: %u\n", fs32_to_cpu(sb, cg->cg_cs.cs_ndir)); 257 pr_debug(" cs_ndir: %u\n", fs32_to_cpu(sb, cg->cg_cs.cs_ndir));
259 printk(" cs_nbfree: %u\n", fs32_to_cpu(sb, cg->cg_cs.cs_nbfree)); 258 pr_debug(" cs_nbfree: %u\n", fs32_to_cpu(sb, cg->cg_cs.cs_nbfree));
260 printk(" cs_nifree: %u\n", fs32_to_cpu(sb, cg->cg_cs.cs_nifree)); 259 pr_debug(" cs_nifree: %u\n", fs32_to_cpu(sb, cg->cg_cs.cs_nifree));
261 printk(" cs_nffree: %u\n", fs32_to_cpu(sb, cg->cg_cs.cs_nffree)); 260 pr_debug(" cs_nffree: %u\n", fs32_to_cpu(sb, cg->cg_cs.cs_nffree));
262 printk(" rotor: %u\n", fs32_to_cpu(sb, cg->cg_rotor)); 261 pr_debug(" rotor: %u\n", fs32_to_cpu(sb, cg->cg_rotor));
263 printk(" frotor: %u\n", fs32_to_cpu(sb, cg->cg_frotor)); 262 pr_debug(" frotor: %u\n", fs32_to_cpu(sb, cg->cg_frotor));
264 printk(" irotor: %u\n", fs32_to_cpu(sb, cg->cg_irotor)); 263 pr_debug(" irotor: %u\n", fs32_to_cpu(sb, cg->cg_irotor));
265 printk(" frsum: %u, %u, %u, %u, %u, %u, %u, %u\n", 264 pr_debug(" frsum: %u, %u, %u, %u, %u, %u, %u, %u\n",
266 fs32_to_cpu(sb, cg->cg_frsum[0]), fs32_to_cpu(sb, cg->cg_frsum[1]), 265 fs32_to_cpu(sb, cg->cg_frsum[0]), fs32_to_cpu(sb, cg->cg_frsum[1]),
267 fs32_to_cpu(sb, cg->cg_frsum[2]), fs32_to_cpu(sb, cg->cg_frsum[3]), 266 fs32_to_cpu(sb, cg->cg_frsum[2]), fs32_to_cpu(sb, cg->cg_frsum[3]),
268 fs32_to_cpu(sb, cg->cg_frsum[4]), fs32_to_cpu(sb, cg->cg_frsum[5]), 267 fs32_to_cpu(sb, cg->cg_frsum[4]), fs32_to_cpu(sb, cg->cg_frsum[5]),
269 fs32_to_cpu(sb, cg->cg_frsum[6]), fs32_to_cpu(sb, cg->cg_frsum[7])); 268 fs32_to_cpu(sb, cg->cg_frsum[6]), fs32_to_cpu(sb, cg->cg_frsum[7]));
270 printk(" btotoff: %u\n", fs32_to_cpu(sb, cg->cg_btotoff)); 269 pr_debug(" btotoff: %u\n", fs32_to_cpu(sb, cg->cg_btotoff));
271 printk(" boff: %u\n", fs32_to_cpu(sb, cg->cg_boff)); 270 pr_debug(" boff: %u\n", fs32_to_cpu(sb, cg->cg_boff));
272 printk(" iuseoff: %u\n", fs32_to_cpu(sb, cg->cg_iusedoff)); 271 pr_debug(" iuseoff: %u\n", fs32_to_cpu(sb, cg->cg_iusedoff));
273 printk(" freeoff: %u\n", fs32_to_cpu(sb, cg->cg_freeoff)); 272 pr_debug(" freeoff: %u\n", fs32_to_cpu(sb, cg->cg_freeoff));
274 printk(" nextfreeoff: %u\n", fs32_to_cpu(sb, cg->cg_nextfreeoff)); 273 pr_debug(" nextfreeoff: %u\n", fs32_to_cpu(sb, cg->cg_nextfreeoff));
275 printk(" clustersumoff %u\n", 274 pr_debug(" clustersumoff %u\n",
276 fs32_to_cpu(sb, cg->cg_u.cg_44.cg_clustersumoff)); 275 fs32_to_cpu(sb, cg->cg_u.cg_44.cg_clustersumoff));
277 printk(" clusteroff %u\n", 276 pr_debug(" clusteroff %u\n",
278 fs32_to_cpu(sb, cg->cg_u.cg_44.cg_clusteroff)); 277 fs32_to_cpu(sb, cg->cg_u.cg_44.cg_clusteroff));
279 printk(" nclusterblks %u\n", 278 pr_debug(" nclusterblks %u\n",
280 fs32_to_cpu(sb, cg->cg_u.cg_44.cg_nclusterblks)); 279 fs32_to_cpu(sb, cg->cg_u.cg_44.cg_nclusterblks));
281 printk("\n"); 280 pr_debug("\n");
282} 281}
283#else 282#else
284# define ufs_print_super_stuff(sb, usb1, usb2, usb3) /**/ 283# define ufs_print_super_stuff(sb, usb1, usb2, usb3) /**/
@@ -287,13 +286,12 @@ static void ufs_print_cylinder_stuff(struct super_block *sb,
287 286
288static const struct super_operations ufs_super_ops; 287static const struct super_operations ufs_super_ops;
289 288
290static char error_buf[1024];
291
292void ufs_error (struct super_block * sb, const char * function, 289void ufs_error (struct super_block * sb, const char * function,
293 const char * fmt, ...) 290 const char * fmt, ...)
294{ 291{
295 struct ufs_sb_private_info * uspi; 292 struct ufs_sb_private_info * uspi;
296 struct ufs_super_block_first * usb1; 293 struct ufs_super_block_first * usb1;
294 struct va_format vaf;
297 va_list args; 295 va_list args;
298 296
299 uspi = UFS_SB(sb)->s_uspi; 297 uspi = UFS_SB(sb)->s_uspi;
@@ -305,20 +303,21 @@ void ufs_error (struct super_block * sb, const char * function,
305 ufs_mark_sb_dirty(sb); 303 ufs_mark_sb_dirty(sb);
306 sb->s_flags |= MS_RDONLY; 304 sb->s_flags |= MS_RDONLY;
307 } 305 }
308 va_start (args, fmt); 306 va_start(args, fmt);
309 vsnprintf (error_buf, sizeof(error_buf), fmt, args); 307 vaf.fmt = fmt;
310 va_end (args); 308 vaf.va = &args;
311 switch (UFS_SB(sb)->s_mount_opt & UFS_MOUNT_ONERROR) { 309 switch (UFS_SB(sb)->s_mount_opt & UFS_MOUNT_ONERROR) {
312 case UFS_MOUNT_ONERROR_PANIC: 310 case UFS_MOUNT_ONERROR_PANIC:
313 panic ("UFS-fs panic (device %s): %s: %s\n", 311 panic("panic (device %s): %s: %pV\n",
314 sb->s_id, function, error_buf); 312 sb->s_id, function, &vaf);
315 313
316 case UFS_MOUNT_ONERROR_LOCK: 314 case UFS_MOUNT_ONERROR_LOCK:
317 case UFS_MOUNT_ONERROR_UMOUNT: 315 case UFS_MOUNT_ONERROR_UMOUNT:
318 case UFS_MOUNT_ONERROR_REPAIR: 316 case UFS_MOUNT_ONERROR_REPAIR:
319 printk (KERN_CRIT "UFS-fs error (device %s): %s: %s\n", 317 pr_crit("error (device %s): %s: %pV\n",
320 sb->s_id, function, error_buf); 318 sb->s_id, function, &vaf);
321 } 319 }
320 va_end(args);
322} 321}
323 322
324void ufs_panic (struct super_block * sb, const char * function, 323void ufs_panic (struct super_block * sb, const char * function,
@@ -326,6 +325,7 @@ void ufs_panic (struct super_block * sb, const char * function,
326{ 325{
327 struct ufs_sb_private_info * uspi; 326 struct ufs_sb_private_info * uspi;
328 struct ufs_super_block_first * usb1; 327 struct ufs_super_block_first * usb1;
328 struct va_format vaf;
329 va_list args; 329 va_list args;
330 330
331 uspi = UFS_SB(sb)->s_uspi; 331 uspi = UFS_SB(sb)->s_uspi;
@@ -336,24 +336,27 @@ void ufs_panic (struct super_block * sb, const char * function,
336 ubh_mark_buffer_dirty(USPI_UBH(uspi)); 336 ubh_mark_buffer_dirty(USPI_UBH(uspi));
337 ufs_mark_sb_dirty(sb); 337 ufs_mark_sb_dirty(sb);
338 } 338 }
339 va_start (args, fmt); 339 va_start(args, fmt);
340 vsnprintf (error_buf, sizeof(error_buf), fmt, args); 340 vaf.fmt = fmt;
341 va_end (args); 341 vaf.va = &args;
342 sb->s_flags |= MS_RDONLY; 342 sb->s_flags |= MS_RDONLY;
343 printk (KERN_CRIT "UFS-fs panic (device %s): %s: %s\n", 343 pr_crit("panic (device %s): %s: %pV\n",
344 sb->s_id, function, error_buf); 344 sb->s_id, function, &vaf);
345 va_end(args);
345} 346}
346 347
347void ufs_warning (struct super_block * sb, const char * function, 348void ufs_warning (struct super_block * sb, const char * function,
348 const char * fmt, ...) 349 const char * fmt, ...)
349{ 350{
351 struct va_format vaf;
350 va_list args; 352 va_list args;
351 353
352 va_start (args, fmt); 354 va_start(args, fmt);
353 vsnprintf (error_buf, sizeof(error_buf), fmt, args); 355 vaf.fmt = fmt;
354 va_end (args); 356 vaf.va = &args;
355 printk (KERN_WARNING "UFS-fs warning (device %s): %s: %s\n", 357 pr_warn("(device %s): %s: %pV\n",
356 sb->s_id, function, error_buf); 358 sb->s_id, function, &vaf);
359 va_end(args);
357} 360}
358 361
359enum { 362enum {
@@ -464,14 +467,12 @@ static int ufs_parse_options (char * options, unsigned * mount_options)
464 ufs_set_opt (*mount_options, ONERROR_UMOUNT); 467 ufs_set_opt (*mount_options, ONERROR_UMOUNT);
465 break; 468 break;
466 case Opt_onerror_repair: 469 case Opt_onerror_repair:
467 printk("UFS-fs: Unable to do repair on error, " 470 pr_err("Unable to do repair on error, will lock lock instead\n");
468 "will lock lock instead\n");
469 ufs_clear_opt (*mount_options, ONERROR); 471 ufs_clear_opt (*mount_options, ONERROR);
470 ufs_set_opt (*mount_options, ONERROR_REPAIR); 472 ufs_set_opt (*mount_options, ONERROR_REPAIR);
471 break; 473 break;
472 default: 474 default:
473 printk("UFS-fs: Invalid option: \"%s\" " 475 pr_err("Invalid option: \"%s\" or missing value\n", p);
474 "or missing value\n", p);
475 return 0; 476 return 0;
476 } 477 }
477 } 478 }
@@ -788,8 +789,7 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent)
788 789
789#ifndef CONFIG_UFS_FS_WRITE 790#ifndef CONFIG_UFS_FS_WRITE
790 if (!(sb->s_flags & MS_RDONLY)) { 791 if (!(sb->s_flags & MS_RDONLY)) {
791 printk("ufs was compiled with read-only support, " 792 pr_err("ufs was compiled with read-only support, can't be mounted as read-write\n");
792 "can't be mounted as read-write\n");
793 return -EROFS; 793 return -EROFS;
794 } 794 }
795#endif 795#endif
@@ -812,12 +812,12 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent)
812 sbi->s_mount_opt = 0; 812 sbi->s_mount_opt = 0;
813 ufs_set_opt (sbi->s_mount_opt, ONERROR_LOCK); 813 ufs_set_opt (sbi->s_mount_opt, ONERROR_LOCK);
814 if (!ufs_parse_options ((char *) data, &sbi->s_mount_opt)) { 814 if (!ufs_parse_options ((char *) data, &sbi->s_mount_opt)) {
815 printk("wrong mount options\n"); 815 pr_err("wrong mount options\n");
816 goto failed; 816 goto failed;
817 } 817 }
818 if (!(sbi->s_mount_opt & UFS_MOUNT_UFSTYPE)) { 818 if (!(sbi->s_mount_opt & UFS_MOUNT_UFSTYPE)) {
819 if (!silent) 819 if (!silent)
820 printk("You didn't specify the type of your ufs filesystem\n\n" 820 pr_err("You didn't specify the type of your ufs filesystem\n\n"
821 "mount -t ufs -o ufstype=" 821 "mount -t ufs -o ufstype="
822 "sun|sunx86|44bsd|ufs2|5xbsd|old|hp|nextstep|nextstep-cd|openstep ...\n\n" 822 "sun|sunx86|44bsd|ufs2|5xbsd|old|hp|nextstep|nextstep-cd|openstep ...\n\n"
823 ">>>WARNING<<< Wrong ufstype may corrupt your filesystem, " 823 ">>>WARNING<<< Wrong ufstype may corrupt your filesystem, "
@@ -868,7 +868,7 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent)
868 break; 868 break;
869 869
870 case UFS_MOUNT_UFSTYPE_SUNOS: 870 case UFS_MOUNT_UFSTYPE_SUNOS:
871 UFSD(("ufstype=sunos\n")) 871 UFSD("ufstype=sunos\n");
872 uspi->s_fsize = block_size = 1024; 872 uspi->s_fsize = block_size = 1024;
873 uspi->s_fmask = ~(1024 - 1); 873 uspi->s_fmask = ~(1024 - 1);
874 uspi->s_fshift = 10; 874 uspi->s_fshift = 10;
@@ -900,7 +900,7 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent)
900 flags |= UFS_DE_OLD | UFS_UID_OLD | UFS_ST_OLD | UFS_CG_OLD; 900 flags |= UFS_DE_OLD | UFS_UID_OLD | UFS_ST_OLD | UFS_CG_OLD;
901 if (!(sb->s_flags & MS_RDONLY)) { 901 if (!(sb->s_flags & MS_RDONLY)) {
902 if (!silent) 902 if (!silent)
903 printk(KERN_INFO "ufstype=old is supported read-only\n"); 903 pr_info("ufstype=old is supported read-only\n");
904 sb->s_flags |= MS_RDONLY; 904 sb->s_flags |= MS_RDONLY;
905 } 905 }
906 break; 906 break;
@@ -916,7 +916,7 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent)
916 flags |= UFS_DE_OLD | UFS_UID_OLD | UFS_ST_OLD | UFS_CG_OLD; 916 flags |= UFS_DE_OLD | UFS_UID_OLD | UFS_ST_OLD | UFS_CG_OLD;
917 if (!(sb->s_flags & MS_RDONLY)) { 917 if (!(sb->s_flags & MS_RDONLY)) {
918 if (!silent) 918 if (!silent)
919 printk(KERN_INFO "ufstype=nextstep is supported read-only\n"); 919 pr_info("ufstype=nextstep is supported read-only\n");
920 sb->s_flags |= MS_RDONLY; 920 sb->s_flags |= MS_RDONLY;
921 } 921 }
922 break; 922 break;
@@ -932,7 +932,7 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent)
932 flags |= UFS_DE_OLD | UFS_UID_OLD | UFS_ST_OLD | UFS_CG_OLD; 932 flags |= UFS_DE_OLD | UFS_UID_OLD | UFS_ST_OLD | UFS_CG_OLD;
933 if (!(sb->s_flags & MS_RDONLY)) { 933 if (!(sb->s_flags & MS_RDONLY)) {
934 if (!silent) 934 if (!silent)
935 printk(KERN_INFO "ufstype=nextstep-cd is supported read-only\n"); 935 pr_info("ufstype=nextstep-cd is supported read-only\n");
936 sb->s_flags |= MS_RDONLY; 936 sb->s_flags |= MS_RDONLY;
937 } 937 }
938 break; 938 break;
@@ -948,7 +948,7 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent)
948 flags |= UFS_DE_44BSD | UFS_UID_44BSD | UFS_ST_44BSD | UFS_CG_44BSD; 948 flags |= UFS_DE_44BSD | UFS_UID_44BSD | UFS_ST_44BSD | UFS_CG_44BSD;
949 if (!(sb->s_flags & MS_RDONLY)) { 949 if (!(sb->s_flags & MS_RDONLY)) {
950 if (!silent) 950 if (!silent)
951 printk(KERN_INFO "ufstype=openstep is supported read-only\n"); 951 pr_info("ufstype=openstep is supported read-only\n");
952 sb->s_flags |= MS_RDONLY; 952 sb->s_flags |= MS_RDONLY;
953 } 953 }
954 break; 954 break;
@@ -963,19 +963,19 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent)
963 flags |= UFS_DE_OLD | UFS_UID_OLD | UFS_ST_OLD | UFS_CG_OLD; 963 flags |= UFS_DE_OLD | UFS_UID_OLD | UFS_ST_OLD | UFS_CG_OLD;
964 if (!(sb->s_flags & MS_RDONLY)) { 964 if (!(sb->s_flags & MS_RDONLY)) {
965 if (!silent) 965 if (!silent)
966 printk(KERN_INFO "ufstype=hp is supported read-only\n"); 966 pr_info("ufstype=hp is supported read-only\n");
967 sb->s_flags |= MS_RDONLY; 967 sb->s_flags |= MS_RDONLY;
968 } 968 }
969 break; 969 break;
970 default: 970 default:
971 if (!silent) 971 if (!silent)
972 printk("unknown ufstype\n"); 972 pr_err("unknown ufstype\n");
973 goto failed; 973 goto failed;
974 } 974 }
975 975
976again: 976again:
977 if (!sb_set_blocksize(sb, block_size)) { 977 if (!sb_set_blocksize(sb, block_size)) {
978 printk(KERN_ERR "UFS: failed to set blocksize\n"); 978 pr_err("failed to set blocksize\n");
979 goto failed; 979 goto failed;
980 } 980 }
981 981
@@ -1034,7 +1034,7 @@ again:
1034 goto again; 1034 goto again;
1035 } 1035 }
1036 if (!silent) 1036 if (!silent)
1037 printk("ufs_read_super: bad magic number\n"); 1037 pr_err("%s(): bad magic number\n", __func__);
1038 goto failed; 1038 goto failed;
1039 1039
1040magic_found: 1040magic_found:
@@ -1048,33 +1048,33 @@ magic_found:
1048 uspi->s_fshift = fs32_to_cpu(sb, usb1->fs_fshift); 1048 uspi->s_fshift = fs32_to_cpu(sb, usb1->fs_fshift);
1049 1049
1050 if (!is_power_of_2(uspi->s_fsize)) { 1050 if (!is_power_of_2(uspi->s_fsize)) {
1051 printk(KERN_ERR "ufs_read_super: fragment size %u is not a power of 2\n", 1051 pr_err("%s(): fragment size %u is not a power of 2\n",
1052 uspi->s_fsize); 1052 __func__, uspi->s_fsize);
1053 goto failed; 1053 goto failed;
1054 } 1054 }
1055 if (uspi->s_fsize < 512) { 1055 if (uspi->s_fsize < 512) {
1056 printk(KERN_ERR "ufs_read_super: fragment size %u is too small\n", 1056 pr_err("%s(): fragment size %u is too small\n",
1057 uspi->s_fsize); 1057 __func__, uspi->s_fsize);
1058 goto failed; 1058 goto failed;
1059 } 1059 }
1060 if (uspi->s_fsize > 4096) { 1060 if (uspi->s_fsize > 4096) {
1061 printk(KERN_ERR "ufs_read_super: fragment size %u is too large\n", 1061 pr_err("%s(): fragment size %u is too large\n",
1062 uspi->s_fsize); 1062 __func__, uspi->s_fsize);
1063 goto failed; 1063 goto failed;
1064 } 1064 }
1065 if (!is_power_of_2(uspi->s_bsize)) { 1065 if (!is_power_of_2(uspi->s_bsize)) {
1066 printk(KERN_ERR "ufs_read_super: block size %u is not a power of 2\n", 1066 pr_err("%s(): block size %u is not a power of 2\n",
1067 uspi->s_bsize); 1067 __func__, uspi->s_bsize);
1068 goto failed; 1068 goto failed;
1069 } 1069 }
1070 if (uspi->s_bsize < 4096) { 1070 if (uspi->s_bsize < 4096) {
1071 printk(KERN_ERR "ufs_read_super: block size %u is too small\n", 1071 pr_err("%s(): block size %u is too small\n",
1072 uspi->s_bsize); 1072 __func__, uspi->s_bsize);
1073 goto failed; 1073 goto failed;
1074 } 1074 }
1075 if (uspi->s_bsize / uspi->s_fsize > 8) { 1075 if (uspi->s_bsize / uspi->s_fsize > 8) {
1076 printk(KERN_ERR "ufs_read_super: too many fragments per block (%u)\n", 1076 pr_err("%s(): too many fragments per block (%u)\n",
1077 uspi->s_bsize / uspi->s_fsize); 1077 __func__, uspi->s_bsize / uspi->s_fsize);
1078 goto failed; 1078 goto failed;
1079 } 1079 }
1080 if (uspi->s_fsize != block_size || uspi->s_sbsize != super_block_size) { 1080 if (uspi->s_fsize != block_size || uspi->s_sbsize != super_block_size) {
@@ -1113,20 +1113,21 @@ magic_found:
1113 UFSD("fs is DEC OSF/1\n"); 1113 UFSD("fs is DEC OSF/1\n");
1114 break; 1114 break;
1115 case UFS_FSACTIVE: 1115 case UFS_FSACTIVE:
1116 printk("ufs_read_super: fs is active\n"); 1116 pr_err("%s(): fs is active\n", __func__);
1117 sb->s_flags |= MS_RDONLY; 1117 sb->s_flags |= MS_RDONLY;
1118 break; 1118 break;
1119 case UFS_FSBAD: 1119 case UFS_FSBAD:
1120 printk("ufs_read_super: fs is bad\n"); 1120 pr_err("%s(): fs is bad\n", __func__);
1121 sb->s_flags |= MS_RDONLY; 1121 sb->s_flags |= MS_RDONLY;
1122 break; 1122 break;
1123 default: 1123 default:
1124 printk("ufs_read_super: can't grok fs_clean 0x%x\n", usb1->fs_clean); 1124 pr_err("%s(): can't grok fs_clean 0x%x\n",
1125 __func__, usb1->fs_clean);
1125 sb->s_flags |= MS_RDONLY; 1126 sb->s_flags |= MS_RDONLY;
1126 break; 1127 break;
1127 } 1128 }
1128 } else { 1129 } else {
1129 printk("ufs_read_super: fs needs fsck\n"); 1130 pr_err("%s(): fs needs fsck\n", __func__);
1130 sb->s_flags |= MS_RDONLY; 1131 sb->s_flags |= MS_RDONLY;
1131 } 1132 }
1132 1133
@@ -1299,7 +1300,7 @@ static int ufs_remount (struct super_block *sb, int *mount_flags, char *data)
1299 if (!(new_mount_opt & UFS_MOUNT_UFSTYPE)) { 1300 if (!(new_mount_opt & UFS_MOUNT_UFSTYPE)) {
1300 new_mount_opt |= ufstype; 1301 new_mount_opt |= ufstype;
1301 } else if ((new_mount_opt & UFS_MOUNT_UFSTYPE) != ufstype) { 1302 } else if ((new_mount_opt & UFS_MOUNT_UFSTYPE) != ufstype) {
1302 printk("ufstype can't be changed during remount\n"); 1303 pr_err("ufstype can't be changed during remount\n");
1303 unlock_ufs(sb); 1304 unlock_ufs(sb);
1304 return -EINVAL; 1305 return -EINVAL;
1305 } 1306 }
@@ -1328,8 +1329,7 @@ static int ufs_remount (struct super_block *sb, int *mount_flags, char *data)
1328 * fs was mounted as ro, remounting rw 1329 * fs was mounted as ro, remounting rw
1329 */ 1330 */
1330#ifndef CONFIG_UFS_FS_WRITE 1331#ifndef CONFIG_UFS_FS_WRITE
1331 printk("ufs was compiled with read-only support, " 1332 pr_err("ufs was compiled with read-only support, can't be mounted as read-write\n");
1332 "can't be mounted as read-write\n");
1333 unlock_ufs(sb); 1333 unlock_ufs(sb);
1334 return -EINVAL; 1334 return -EINVAL;
1335#else 1335#else
@@ -1338,12 +1338,12 @@ static int ufs_remount (struct super_block *sb, int *mount_flags, char *data)
1338 ufstype != UFS_MOUNT_UFSTYPE_44BSD && 1338 ufstype != UFS_MOUNT_UFSTYPE_44BSD &&
1339 ufstype != UFS_MOUNT_UFSTYPE_SUNx86 && 1339 ufstype != UFS_MOUNT_UFSTYPE_SUNx86 &&
1340 ufstype != UFS_MOUNT_UFSTYPE_UFS2) { 1340 ufstype != UFS_MOUNT_UFSTYPE_UFS2) {
1341 printk("this ufstype is read-only supported\n"); 1341 pr_err("this ufstype is read-only supported\n");
1342 unlock_ufs(sb); 1342 unlock_ufs(sb);
1343 return -EINVAL; 1343 return -EINVAL;
1344 } 1344 }
1345 if (!ufs_read_cylinder_structures(sb)) { 1345 if (!ufs_read_cylinder_structures(sb)) {
1346 printk("failed during remounting\n"); 1346 pr_err("failed during remounting\n");
1347 unlock_ufs(sb); 1347 unlock_ufs(sb);
1348 return -EPERM; 1348 return -EPERM;
1349 } 1349 }