Linux Audio

Check our new training course

Embedded Linux Audio

Check our new training course
with Creative Commons CC-BY-SA
lecture materials

Bootlin logo

Elixir Cross Referencer

Loading...
   1
   2
   3
   4
   5
   6
   7
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
  27
  28
  29
  30
  31
  32
  33
  34
  35
  36
  37
  38
  39
  40
  41
  42
  43
  44
  45
  46
  47
  48
  49
  50
  51
  52
  53
  54
  55
  56
  57
  58
  59
  60
  61
  62
  63
  64
  65
  66
  67
  68
  69
  70
  71
  72
  73
  74
  75
  76
  77
  78
  79
  80
  81
  82
  83
  84
  85
  86
  87
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
 197
 198
 199
 200
 201
 202
 203
 204
 205
 206
 207
 208
 209
 210
 211
 212
 213
 214
 215
 216
 217
 218
 219
 220
 221
 222
 223
 224
 225
 226
 227
 228
 229
 230
 231
 232
 233
 234
 235
 236
 237
 238
 239
 240
 241
 242
 243
 244
 245
 246
 247
 248
 249
 250
 251
 252
 253
 254
 255
 256
 257
 258
 259
 260
 261
 262
 263
 264
 265
 266
 267
 268
 269
 270
 271
 272
 273
 274
 275
 276
 277
 278
 279
 280
 281
 282
 283
 284
 285
 286
 287
 288
 289
 290
 291
 292
 293
 294
 295
 296
 297
 298
 299
 300
 301
 302
 303
 304
 305
 306
 307
 308
 309
 310
 311
 312
 313
 314
 315
 316
 317
 318
 319
 320
 321
 322
 323
 324
 325
 326
 327
 328
 329
 330
 331
 332
 333
 334
 335
 336
 337
 338
 339
 340
 341
 342
 343
 344
 345
 346
 347
 348
 349
 350
 351
 352
 353
 354
 355
 356
 357
 358
 359
 360
 361
 362
 363
 364
 365
 366
 367
 368
 369
 370
 371
 372
 373
 374
 375
 376
 377
 378
 379
 380
 381
 382
 383
 384
 385
 386
 387
 388
 389
 390
 391
 392
 393
 394
 395
 396
 397
 398
 399
 400
 401
 402
 403
 404
 405
 406
 407
 408
 409
 410
 411
 412
 413
 414
 415
 416
 417
 418
 419
 420
 421
 422
 423
 424
 425
 426
 427
 428
 429
 430
 431
 432
 433
 434
 435
 436
 437
 438
 439
 440
 441
 442
 443
 444
 445
 446
 447
 448
 449
 450
 451
 452
 453
 454
 455
 456
 457
 458
 459
 460
 461
 462
 463
 464
 465
 466
 467
 468
 469
 470
 471
 472
 473
 474
 475
 476
 477
 478
 479
 480
 481
 482
 483
 484
 485
 486
 487
 488
 489
 490
 491
 492
 493
 494
 495
 496
 497
 498
 499
 500
 501
 502
 503
 504
 505
 506
 507
 508
 509
 510
 511
 512
 513
 514
 515
 516
 517
 518
 519
 520
 521
 522
 523
 524
 525
 526
 527
 528
 529
 530
 531
 532
 533
 534
 535
 536
 537
 538
 539
 540
 541
 542
 543
 544
 545
 546
 547
 548
 549
 550
 551
 552
 553
 554
 555
 556
 557
 558
 559
 560
 561
 562
 563
 564
 565
 566
 567
 568
 569
 570
 571
 572
 573
 574
 575
 576
 577
 578
 579
 580
 581
 582
 583
 584
 585
 586
 587
 588
 589
 590
 591
 592
 593
 594
 595
 596
 597
 598
 599
 600
 601
 602
 603
 604
 605
 606
 607
 608
 609
 610
 611
 612
 613
 614
 615
 616
 617
 618
 619
 620
 621
 622
 623
 624
 625
 626
 627
 628
 629
 630
 631
 632
 633
 634
 635
 636
 637
 638
 639
 640
 641
 642
 643
 644
 645
 646
 647
 648
 649
 650
 651
 652
 653
 654
 655
 656
 657
 658
 659
 660
 661
 662
 663
 664
 665
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676
 677
 678
 679
 680
 681
 682
 683
 684
 685
 686
 687
 688
 689
 690
 691
 692
 693
 694
 695
 696
 697
 698
 699
 700
 701
 702
 703
 704
 705
 706
 707
 708
 709
 710
 711
 712
 713
 714
 715
 716
 717
 718
 719
 720
 721
 722
 723
 724
 725
 726
 727
 728
 729
 730
 731
 732
 733
 734
 735
 736
 737
 738
 739
 740
 741
 742
 743
 744
 745
 746
 747
 748
 749
 750
 751
 752
 753
 754
 755
 756
 757
 758
 759
 760
 761
 762
 763
 764
 765
 766
 767
 768
 769
 770
 771
 772
 773
 774
 775
 776
 777
 778
 779
 780
 781
 782
 783
 784
 785
 786
 787
 788
 789
 790
 791
 792
 793
 794
 795
 796
 797
 798
 799
 800
 801
 802
 803
 804
 805
 806
 807
 808
 809
 810
 811
 812
 813
 814
 815
 816
 817
 818
 819
 820
 821
 822
 823
 824
 825
 826
 827
 828
 829
 830
 831
 832
 833
 834
 835
 836
 837
 838
 839
 840
 841
 842
 843
 844
 845
 846
 847
 848
 849
 850
 851
 852
 853
 854
 855
 856
 857
 858
 859
 860
 861
 862
 863
 864
 865
 866
 867
 868
 869
 870
 871
 872
 873
 874
 875
 876
 877
 878
 879
 880
 881
 882
 883
 884
 885
 886
 887
 888
 889
 890
 891
 892
 893
 894
 895
 896
 897
 898
 899
 900
 901
 902
 903
 904
 905
 906
 907
 908
 909
 910
 911
 912
 913
 914
 915
 916
 917
 918
 919
 920
 921
 922
 923
 924
 925
 926
 927
 928
 929
 930
 931
 932
 933
 934
 935
 936
 937
 938
 939
 940
 941
 942
 943
 944
 945
 946
 947
 948
 949
 950
 951
 952
 953
 954
 955
 956
 957
 958
 959
 960
 961
 962
 963
 964
 965
 966
 967
 968
 969
 970
 971
 972
 973
 974
 975
 976
 977
 978
 979
 980
 981
 982
 983
 984
 985
 986
 987
 988
 989
 990
 991
 992
 993
 994
 995
 996
 997
 998
 999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
#
# File system configuration
#

menu "File systems"

if BLOCK

source "fs/ext2/Kconfig"
source "fs/ext3/Kconfig"
source "fs/ext4/Kconfig"

config FS_XIP
# execute in place
	bool
	depends on EXT2_FS_XIP
	default y

source "fs/jbd/Kconfig"
source "fs/jbd2/Kconfig"

config FS_MBCACHE
# Meta block cache for Extended Attributes (ext2/ext3/ext4)
	tristate
	default y if EXT2_FS=y && EXT2_FS_XATTR
	default y if EXT3_FS=y && EXT3_FS_XATTR
	default y if EXT4_FS=y && EXT4_FS_XATTR
	default m if EXT2_FS_XATTR || EXT3_FS_XATTR || EXT4_FS_XATTR

config REISERFS_FS
	tristate "Reiserfs support"
	help
	  Stores not just filenames but the files themselves in a balanced
	  tree.  Uses journalling.

	  Balanced trees are more efficient than traditional file system
	  architectural foundations.

	  In general, ReiserFS is as fast as ext2, but is very efficient with
	  large directories and small files.  Additional patches are needed
	  for NFS and quotas, please see <http://www.namesys.com/> for links.

	  It is more easily extended to have features currently found in
	  database and keyword search systems than block allocation based file
	  systems are.  The next version will be so extended, and will support
	  plugins consistent with our motto ``It takes more than a license to
	  make source code open.''

	  Read <http://www.namesys.com/> to learn more about reiserfs.

	  Sponsored by Threshold Networks, Emusic.com, and Bigstorage.com.

	  If you like it, you can pay us to add new features to it that you
	  need, buy a support contract, or pay us to port it to another OS.

config REISERFS_CHECK
	bool "Enable reiserfs debug mode"
	depends on REISERFS_FS
	help
	  If you set this to Y, then ReiserFS will perform every check it can
	  possibly imagine of its internal consistency throughout its
	  operation.  It will also go substantially slower.  More than once we
	  have forgotten that this was on, and then gone despondent over the
	  latest benchmarks.:-) Use of this option allows our team to go all
	  out in checking for consistency when debugging without fear of its
	  effect on end users.  If you are on the verge of sending in a bug
	  report, say Y and you might get a useful error message.  Almost
	  everyone should say N.

config REISERFS_PROC_INFO
	bool "Stats in /proc/fs/reiserfs"
	depends on REISERFS_FS && PROC_FS
	help
	  Create under /proc/fs/reiserfs a hierarchy of files, displaying
	  various ReiserFS statistics and internal data at the expense of
	  making your kernel or module slightly larger (+8 KB). This also
	  increases the amount of kernel memory required for each mount.
	  Almost everyone but ReiserFS developers and people fine-tuning
	  reiserfs or tracing problems should say N.

config REISERFS_FS_XATTR
	bool "ReiserFS extended attributes"
	depends on REISERFS_FS
	help
	  Extended attributes are name:value pairs associated with inodes by
	  the kernel or by users (see the attr(5) manual page, or visit
	  <http://acl.bestbits.at/> for details).

	  If unsure, say N.

config REISERFS_FS_POSIX_ACL
	bool "ReiserFS POSIX Access Control Lists"
	depends on REISERFS_FS_XATTR
	select FS_POSIX_ACL
	help
	  Posix Access Control Lists (ACLs) support permissions for users and
	  groups beyond the owner/group/world scheme.

	  To learn more about Access Control Lists, visit the Posix ACLs for
	  Linux website <http://acl.bestbits.at/>.

	  If you don't know what Access Control Lists are, say N

config REISERFS_FS_SECURITY
	bool "ReiserFS Security Labels"
	depends on REISERFS_FS_XATTR
	help
	  Security labels support alternative access control models
	  implemented by security modules like SELinux.  This option
	  enables an extended attribute handler for file security
	  labels in the ReiserFS filesystem.

	  If you are not using a security module that requires using
	  extended attributes for file security labels, say N.

config JFS_FS
	tristate "JFS filesystem support"
	select NLS
	help
	  This is a port of IBM's Journaled Filesystem .  More information is
	  available in the file <file:Documentation/filesystems/jfs.txt>.

	  If you do not intend to use the JFS filesystem, say N.

config JFS_POSIX_ACL
	bool "JFS POSIX Access Control Lists"
	depends on JFS_FS
	select FS_POSIX_ACL
	help
	  Posix Access Control Lists (ACLs) support permissions for users and
	  groups beyond the owner/group/world scheme.

	  To learn more about Access Control Lists, visit the Posix ACLs for
	  Linux website <http://acl.bestbits.at/>.

	  If you don't know what Access Control Lists are, say N

config JFS_SECURITY
	bool "JFS Security Labels"
	depends on JFS_FS
	help
	  Security labels support alternative access control models
	  implemented by security modules like SELinux.  This option
	  enables an extended attribute handler for file security
	  labels in the jfs filesystem.

	  If you are not using a security module that requires using
	  extended attributes for file security labels, say N.

config JFS_DEBUG
	bool "JFS debugging"
	depends on JFS_FS
	help
	  If you are experiencing any problems with the JFS filesystem, say
	  Y here.  This will result in additional debugging messages to be
	  written to the system log.  Under normal circumstances, this
	  results in very little overhead.

config JFS_STATISTICS
	bool "JFS statistics"
	depends on JFS_FS
	help
	  Enabling this option will cause statistics from the JFS file system
	  to be made available to the user in the /proc/fs/jfs/ directory.

config FS_POSIX_ACL
# Posix ACL utility routines (for now, only ext2/ext3/jfs/reiserfs/nfs4)
#
# NOTE: you can implement Posix ACLs without these helpers (XFS does).
# 	Never use this symbol for ifdefs.
#
	bool
	default n

config FILE_LOCKING
	bool "Enable POSIX file locking API" if EMBEDDED
	default y
	help
	  This option enables standard file locking support, required
          for filesystems like NFS and for the flock() system
          call. Disabling this option saves about 11k.

source "fs/xfs/Kconfig"
source "fs/gfs2/Kconfig"

config OCFS2_FS
	tristate "OCFS2 file system support"
	depends on NET && SYSFS
	select CONFIGFS_FS
	select JBD2
	select CRC32
	select QUOTA
	select QUOTA_TREE
	help
	  OCFS2 is a general purpose extent based shared disk cluster file
	  system with many similarities to ext3. It supports 64 bit inode
	  numbers, and has automatically extending metadata groups which may
	  also make it attractive for non-clustered use.

	  You'll want to install the ocfs2-tools package in order to at least
	  get "mount.ocfs2".

	  Project web page:    http://oss.oracle.com/projects/ocfs2
	  Tools web page:      http://oss.oracle.com/projects/ocfs2-tools
	  OCFS2 mailing lists: http://oss.oracle.com/projects/ocfs2/mailman/

	  For more information on OCFS2, see the file
	  <file:Documentation/filesystems/ocfs2.txt>.

config OCFS2_FS_O2CB
	tristate "O2CB Kernelspace Clustering"
	depends on OCFS2_FS
	default y
	help
	  OCFS2 includes a simple kernelspace clustering package, the OCFS2
	  Cluster Base.  It only requires a very small userspace component
	  to configure it. This comes with the standard ocfs2-tools package.
	  O2CB is limited to maintaining a cluster for OCFS2 file systems.
	  It cannot manage any other cluster applications.

	  It is always safe to say Y here, as the clustering method is
	  run-time selectable.

config OCFS2_FS_USERSPACE_CLUSTER
	tristate "OCFS2 Userspace Clustering"
	depends on OCFS2_FS && DLM
	default y
	help
	  This option will allow OCFS2 to use userspace clustering services
	  in conjunction with the DLM in fs/dlm.  If you are using a
	  userspace cluster manager, say Y here.

	  It is safe to say Y, as the clustering method is run-time
	  selectable.

config OCFS2_FS_STATS
	bool "OCFS2 statistics"
	depends on OCFS2_FS
	default y
	help
	  This option allows some fs statistics to be captured. Enabling
	  this option may increase the memory consumption.

config OCFS2_DEBUG_MASKLOG
	bool "OCFS2 logging support"
	depends on OCFS2_FS
	default y
	help
	  The ocfs2 filesystem has an extensive logging system.  The system
	  allows selection of events to log via files in /sys/o2cb/logmask/.
	  This option will enlarge your kernel, but it allows debugging of
	  ocfs2 filesystem issues.

config OCFS2_DEBUG_FS
	bool "OCFS2 expensive checks"
	depends on OCFS2_FS
	default n
	help
	  This option will enable expensive consistency checks. Enable
	  this option for debugging only as it is likely to decrease
	  performance of the filesystem.

config OCFS2_FS_POSIX_ACL
	bool "OCFS2 POSIX Access Control Lists"
	depends on OCFS2_FS
	select FS_POSIX_ACL
	default n
	help
	  Posix Access Control Lists (ACLs) support permissions for users and
	  groups beyond the owner/group/world scheme.

config BTRFS_FS
	tristate "Btrfs filesystem (EXPERIMENTAL) Unstable disk format"
	depends on EXPERIMENTAL
	select LIBCRC32C
	select ZLIB_INFLATE
	select ZLIB_DEFLATE
	help
	  Btrfs is a new filesystem with extents, writable snapshotting,
	  support for multiple devices and many more features.

	  Btrfs is highly experimental, and THE DISK FORMAT IS NOT YET
	  FINALIZED.  You should say N here unless you are interested in
	  testing Btrfs with non-critical data.

	  To compile this file system support as a module, choose M here. The
	  module will be called btrfs.

	  If unsure, say N.

endif # BLOCK

source "fs/notify/Kconfig"

config QUOTA
	bool "Quota support"
	help
	  If you say Y here, you will be able to set per user limits for disk
	  usage (also called disk quotas). Currently, it works for the
	  ext2, ext3, and reiserfs file system. ext3 also supports journalled
	  quotas for which you don't need to run quotacheck(8) after an unclean
	  shutdown.
	  For further details, read the Quota mini-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>, or the documentation provided
	  with the quota tools. Probably the quota support is only useful for
	  multi user systems. If unsure, say N.

config QUOTA_NETLINK_INTERFACE
	bool "Report quota messages through netlink interface"
	depends on QUOTA && NET
	help
	  If you say Y here, quota warnings (about exceeding softlimit, reaching
	  hardlimit, etc.) will be reported through netlink interface. If unsure,
	  say Y.

config PRINT_QUOTA_WARNING
	bool "Print quota warnings to console (OBSOLETE)"
	depends on QUOTA
	default y
	help
	  If you say Y here, quota warnings (about exceeding softlimit, reaching
	  hardlimit, etc.) will be printed to the process' controlling terminal.
	  Note that this behavior is currently deprecated and may go away in
	  future. Please use notification via netlink socket instead.

# Generic support for tree structured quota files. Seleted when needed.
config QUOTA_TREE
	 tristate

config QFMT_V1
	tristate "Old quota format support"
	depends on QUOTA
	help
	  This quota format was (is) used by kernels earlier than 2.4.22. If
	  you have quota working and you don't want to convert to new quota
	  format say Y here.

config QFMT_V2
	tristate "Quota format v2 support"
	depends on QUOTA
	select QUOTA_TREE
	help
	  This quota format allows using quotas with 32-bit UIDs/GIDs. If you
	  need this functionality say Y here.

config QUOTACTL
	bool
	depends on XFS_QUOTA || QUOTA
	default y

config AUTOFS_FS
	tristate "Kernel automounter support"
	help
	  The automounter is a tool to automatically mount remote file systems
	  on demand. This implementation is partially kernel-based to reduce
	  overhead in the already-mounted case; this is unlike the BSD
	  automounter (amd), which is a pure user space daemon.

	  To use the automounter you need the user-space tools from the autofs
	  package; you can find the location in <file:Documentation/Changes>.
	  You also want to answer Y to "NFS file system support", below.

	  If you want to use the newer version of the automounter with more
	  features, say N here and say Y to "Kernel automounter v4 support",
	  below.

	  To compile this support as a module, choose M here: the module will be
	  called autofs.

	  If you are not a part of a fairly large, distributed network, you
	  probably do not need an automounter, and can say N here.

config AUTOFS4_FS
	tristate "Kernel automounter version 4 support (also supports v3)"
	help
	  The automounter is a tool to automatically mount remote file systems
	  on demand. This implementation is partially kernel-based to reduce
	  overhead in the already-mounted case; this is unlike the BSD
	  automounter (amd), which is a pure user space daemon.

	  To use the automounter you need the user-space tools from
	  <ftp://ftp.kernel.org/pub/linux/daemons/autofs/v4/>; you also
	  want to answer Y to "NFS file system support", below.

	  To compile this support as a module, choose M here: the module will be
	  called autofs4.  You will need to add "alias autofs autofs4" to your
	  modules configuration file.

	  If you are not a part of a fairly large, distributed network or
	  don't have a laptop which needs to dynamically reconfigure to the
	  local network, you probably do not need an automounter, and can say
	  N here.

config FUSE_FS
	tristate "FUSE (Filesystem in Userspace) support"
	help
	  With FUSE it is possible to implement a fully functional filesystem
	  in a userspace program.

	  There's also companion library: libfuse.  This library along with
	  utilities is available from the FUSE homepage:
	  <http://fuse.sourceforge.net/>

	  See <file:Documentation/filesystems/fuse.txt> for more information.
	  See <file:Documentation/Changes> for needed library/utility version.

	  If you want to develop a userspace FS, or if you want to use
	  a filesystem based on FUSE, answer Y or M.

config GENERIC_ACL
	bool
	select FS_POSIX_ACL

if BLOCK
menu "CD-ROM/DVD Filesystems"

config ISO9660_FS
	tristate "ISO 9660 CDROM file system support"
	help
	  This is the standard file system used on CD-ROMs.  It was previously
	  known as "High Sierra File System" and is called "hsfs" on other
	  Unix systems.  The so-called Rock-Ridge extensions which allow for
	  long Unix filenames and symbolic links are also supported by this
	  driver.  If you have a CD-ROM drive and want to do more with it than
	  just listen to audio CDs and watch its LEDs, say Y (and read
	  <file:Documentation/filesystems/isofs.txt> and the CD-ROM-HOWTO,
	  available from <http://www.tldp.org/docs.html#howto>), thereby
	  enlarging your kernel by about 27 KB; otherwise say N.

	  To compile this file system support as a module, choose M here: the
	  module will be called isofs.

config JOLIET
	bool "Microsoft Joliet CDROM extensions"
	depends on ISO9660_FS
	select NLS
	help
	  Joliet is a Microsoft extension for the ISO 9660 CD-ROM file system
	  which allows for long filenames in unicode format (unicode is the
	  new 16 bit character code, successor to ASCII, which encodes the
	  characters of almost all languages of the world; see
	  <http://www.unicode.org/> for more information).  Say Y here if you
	  want to be able to read Joliet CD-ROMs under Linux.

config ZISOFS
	bool "Transparent decompression extension"
	depends on ISO9660_FS
	select ZLIB_INFLATE
	help
	  This is a Linux-specific extension to RockRidge which lets you store
	  data in compressed form on a CD-ROM and have it transparently
	  decompressed when the CD-ROM is accessed.  See
	  <http://www.kernel.org/pub/linux/utils/fs/zisofs/> for the tools
	  necessary to create such a filesystem.  Say Y here if you want to be
	  able to read such compressed CD-ROMs.

config UDF_FS
	tristate "UDF file system support"
	select CRC_ITU_T
	help
	  This is the new file system used on some CD-ROMs and DVDs. Say Y if
	  you intend to mount DVD discs or CDRW's written in packet mode, or
	  if written to by other UDF utilities, such as DirectCD.
	  Please read <file:Documentation/filesystems/udf.txt>.

	  To compile this file system support as a module, choose M here: the
	  module will be called udf.

	  If unsure, say N.

config UDF_NLS
	bool
	default y
	depends on (UDF_FS=m && NLS) || (UDF_FS=y && NLS=y)

endmenu
endif # BLOCK

if BLOCK
menu "DOS/FAT/NT Filesystems"

config FAT_FS
	tristate
	select NLS
	help
	  If you want to use one of the FAT-based file systems (the MS-DOS and
	  VFAT (Windows 95) file systems), then you must say Y or M here
	  to include FAT support. You will then be able to mount partitions or
	  diskettes with FAT-based file systems and transparently access the
	  files on them, i.e. MSDOS files will look and behave just like all
	  other Unix files.

	  This FAT support is not a file system in itself, it only provides
	  the foundation for the other file systems. You will have to say Y or
	  M to at least one of "MSDOS fs support" or "VFAT fs support" in
	  order to make use of it.

	  Another way to read and write MSDOS floppies and hard drive
	  partitions from within Linux (but not transparently) is with the
	  mtools ("man mtools") program suite. You don't need to say Y here in
	  order to do that.

	  If you need to move large files on floppies between a DOS and a
	  Linux box, say Y here, mount the floppy under Linux with an MSDOS
	  file system and use GNU tar's M option. GNU tar is a program
	  available for Unix and DOS ("man tar" or "info tar").

	  The FAT support will enlarge your kernel by about 37 KB. If unsure,
	  say Y.

	  To compile this as a module, choose M here: the module will be called
	  fat.  Note that if you compile the FAT support as a module, you
	  cannot compile any of the FAT-based file systems into the kernel
	  -- they will have to be modules as well.

config MSDOS_FS
	tristate "MSDOS fs support"
	select FAT_FS
	help
	  This allows you to mount MSDOS partitions of your hard drive (unless
	  they are compressed; to access compressed MSDOS partitions under
	  Linux, you can either use the DOS emulator DOSEMU, described in the
	  DOSEMU-HOWTO, available from
	  <http://www.tldp.org/docs.html#howto>, or try dmsdosfs in
	  <ftp://ibiblio.org/pub/Linux/system/filesystems/dosfs/>. If you
	  intend to use dosemu with a non-compressed MSDOS partition, say Y
	  here) and MSDOS floppies. This means that file access becomes
	  transparent, i.e. the MSDOS files look and behave just like all
	  other Unix files.

	  If you have Windows 95 or Windows NT installed on your MSDOS
	  partitions, you should use the VFAT file system (say Y to "VFAT fs
	  support" below), or you will not be able to see the long filenames
	  generated by Windows 95 / Windows NT.

	  This option will enlarge your kernel by about 7 KB. If unsure,
	  answer Y. This will only work if you said Y to "DOS FAT fs support"
	  as well. To compile this as a module, choose M here: the module will
	  be called msdos.

config VFAT_FS
	tristate "VFAT (Windows-95) fs support"
	select FAT_FS
	help
	  This option provides support for normal Windows file systems with
	  long filenames.  That includes non-compressed FAT-based file systems
	  used by Windows 95, Windows 98, Windows NT 4.0, and the Unix
	  programs from the mtools package.

	  The VFAT support enlarges your kernel by about 10 KB and it only
	  works if you said Y to the "DOS FAT fs support" above.  Please read
	  the file <file:Documentation/filesystems/vfat.txt> for details.  If
	  unsure, say Y.

	  To compile this as a module, choose M here: the module will be called
	  vfat.

config FAT_DEFAULT_CODEPAGE
	int "Default codepage for FAT"
	depends on MSDOS_FS || VFAT_FS
	default 437
	help
	  This option should be set to the codepage of your FAT filesystems.
	  It can be overridden with the "codepage" mount option.
	  See <file:Documentation/filesystems/vfat.txt> for more information.

config FAT_DEFAULT_IOCHARSET
	string "Default iocharset for FAT"
	depends on VFAT_FS
	default "iso8859-1"
	help
	  Set this to the default input/output character set you'd
	  like FAT to use. It should probably match the character set
	  that most of your FAT filesystems use, and can be overridden
	  with the "iocharset" mount option for FAT filesystems.
	  Note that "utf8" is not recommended for FAT filesystems.
	  If unsure, you shouldn't set "utf8" here.
	  See <file:Documentation/filesystems/vfat.txt> for more information.

config NTFS_FS
	tristate "NTFS file system support"
	select NLS
	help
	  NTFS is the file system of Microsoft Windows NT, 2000, XP and 2003.

	  Saying Y or M here enables read support.  There is partial, but
	  safe, write support available.  For write support you must also
	  say Y to "NTFS write support" below.

	  There are also a number of user-space tools available, called
	  ntfsprogs.  These include ntfsundelete and ntfsresize, that work
	  without NTFS support enabled in the kernel.

	  This is a rewrite from scratch of Linux NTFS support and replaced
	  the old NTFS code starting with Linux 2.5.11.  A backport to
	  the Linux 2.4 kernel series is separately available as a patch
	  from the project web site.

	  For more information see <file:Documentation/filesystems/ntfs.txt>
	  and <http://www.linux-ntfs.org/>.

	  To compile this file system support as a module, choose M here: the
	  module will be called ntfs.

	  If you are not using Windows NT, 2000, XP or 2003 in addition to
	  Linux on your computer it is safe to say N.

config NTFS_DEBUG
	bool "NTFS debugging support"
	depends on NTFS_FS
	help
	  If you are experiencing any problems with the NTFS file system, say
	  Y here.  This will result in additional consistency checks to be
	  performed by the driver as well as additional debugging messages to
	  be written to the system log.  Note that debugging messages are
	  disabled by default.  To enable them, supply the option debug_msgs=1
	  at the kernel command line when booting the kernel or as an option
	  to insmod when loading the ntfs module.  Once the driver is active,
	  you can enable debugging messages by doing (as root):
	  echo 1 > /proc/sys/fs/ntfs-debug
	  Replacing the "1" with "0" would disable debug messages.

	  If you leave debugging messages disabled, this results in little
	  overhead, but enabling debug messages results in very significant
	  slowdown of the system.

	  When reporting bugs, please try to have available a full dump of
	  debugging messages while the misbehaviour was occurring.

config NTFS_RW
	bool "NTFS write support"
	depends on NTFS_FS
	help
	  This enables the partial, but safe, write support in the NTFS driver.

	  The only supported operation is overwriting existing files, without
	  changing the file length.  No file or directory creation, deletion or
	  renaming is possible.  Note only non-resident files can be written to
	  so you may find that some very small files (<500 bytes or so) cannot
	  be written to.

	  While we cannot guarantee that it will not damage any data, we have
	  so far not received a single report where the driver would have
	  damaged someones data so we assume it is perfectly safe to use.

	  Note:  While write support is safe in this version (a rewrite from
	  scratch of the NTFS support), it should be noted that the old NTFS
	  write support, included in Linux 2.5.10 and before (since 1997),
	  is not safe.

	  This is currently useful with TopologiLinux.  TopologiLinux is run
	  on top of any DOS/Microsoft Windows system without partitioning your
	  hard disk.  Unlike other Linux distributions TopologiLinux does not
	  need its own partition.  For more information see
	  <http://topologi-linux.sourceforge.net/>

	  It is perfectly safe to say N here.

endmenu
endif # BLOCK

menu "Pseudo filesystems"

source "fs/proc/Kconfig"

config SYSFS
	bool "sysfs file system support" if EMBEDDED
	default y
	help
	The sysfs filesystem is a virtual filesystem that the kernel uses to
	export internal kernel objects, their attributes, and their
	relationships to one another.

	Users can use sysfs to ascertain useful information about the running
	kernel, such as the devices the kernel has discovered on each bus and
	which driver each is bound to. sysfs can also be used to tune devices
	and other kernel subsystems.

	Some system agents rely on the information in sysfs to operate.
	/sbin/hotplug uses device and object attributes in sysfs to assist in
	delegating policy decisions, like persistently naming devices.

	sysfs is currently used by the block subsystem to mount the root
	partition.  If sysfs is disabled you must specify the boot device on
	the kernel boot command line via its major and minor numbers.  For
	example, "root=03:01" for /dev/hda1.

	Designers of embedded systems may wish to say N here to conserve space.

config TMPFS
	bool "Virtual memory file system support (former shm fs)"
	help
	  Tmpfs is a file system which keeps all files in virtual memory.

	  Everything in tmpfs is temporary in the sense that no files will be
	  created on your hard drive. The files live in memory and swap
	  space. If you unmount a tmpfs instance, everything stored therein is
	  lost.

	  See <file:Documentation/filesystems/tmpfs.txt> for details.

config TMPFS_POSIX_ACL
	bool "Tmpfs POSIX Access Control Lists"
	depends on TMPFS
	select GENERIC_ACL
	help
	  POSIX Access Control Lists (ACLs) support permissions for users and
	  groups beyond the owner/group/world scheme.

	  To learn more about Access Control Lists, visit the POSIX ACLs for
	  Linux website <http://acl.bestbits.at/>.

	  If you don't know what Access Control Lists are, say N.

config HUGETLBFS
	bool "HugeTLB file system support"
	depends on X86 || IA64 || PPC64 || SPARC64 || (SUPERH && MMU) || \
		   (S390 && 64BIT) || BROKEN
	help
	  hugetlbfs is a filesystem backing for HugeTLB pages, based on
	  ramfs. For architectures that support it, say Y here and read
	  <file:Documentation/vm/hugetlbpage.txt> for details.

	  If unsure, say N.

config HUGETLB_PAGE
	def_bool HUGETLBFS

config CONFIGFS_FS
	tristate "Userspace-driven configuration filesystem"
	depends on SYSFS
	help
	  configfs is a ram-based filesystem that provides the converse
	  of sysfs's functionality. Where sysfs is a filesystem-based
	  view of kernel objects, configfs is a filesystem-based manager
	  of kernel objects, or config_items.

	  Both sysfs and configfs can and should exist together on the
	  same system. One is not a replacement for the other.

endmenu

menuconfig MISC_FILESYSTEMS
	bool "Miscellaneous filesystems"
	default y
	---help---
	  Say Y here to get to see options for various miscellaneous
	  filesystems, such as filesystems that came from other
	  operating systems.

	  This option alone does not add any kernel code.

	  If you say N, all options in this submenu will be skipped and
	  disabled; if unsure, say Y here.

if MISC_FILESYSTEMS

config ADFS_FS
	tristate "ADFS file system support (EXPERIMENTAL)"
	depends on BLOCK && EXPERIMENTAL
	help
	  The Acorn Disc Filing System is the standard file system of the
	  RiscOS operating system which runs on Acorn's ARM-based Risc PC
	  systems and the Acorn Archimedes range of machines. If you say Y
	  here, Linux will be able to read from ADFS partitions on hard drives
	  and from ADFS-formatted floppy discs. If you also want to be able to
	  write to those devices, say Y to "ADFS write support" below.

	  The ADFS partition should be the first partition (i.e.,
	  /dev/[hs]d?1) on each of your drives. Please read the file
	  <file:Documentation/filesystems/adfs.txt> for further details.

	  To compile this code as a module, choose M here: the module will be
	  called adfs.

	  If unsure, say N.

config ADFS_FS_RW
	bool "ADFS write support (DANGEROUS)"
	depends on ADFS_FS
	help
	  If you say Y here, you will be able to write to ADFS partitions on
	  hard drives and ADFS-formatted floppy disks. This is experimental
	  codes, so if you're unsure, say N.

config AFFS_FS
	tristate "Amiga FFS file system support (EXPERIMENTAL)"
	depends on BLOCK && EXPERIMENTAL
	help
	  The Fast File System (FFS) is the common file system used on hard
	  disks by Amiga(tm) systems since AmigaOS Version 1.3 (34.20).  Say Y
	  if you want to be able to read and write files from and to an Amiga
	  FFS partition on your hard drive.  Amiga floppies however cannot be
	  read with this driver due to an incompatibility of the floppy
	  controller used in an Amiga and the standard floppy controller in
	  PCs and workstations. Read <file:Documentation/filesystems/affs.txt>
	  and <file:fs/affs/Changes>.

	  With this driver you can also mount disk files used by Bernd
	  Schmidt's Un*X Amiga Emulator
	  (<http://www.freiburg.linux.de/~uae/>).
	  If you want to do this, you will also need to say Y or M to "Loop
	  device support", above.

	  To compile this file system support as a module, choose M here: the
	  module will be called affs.  If unsure, say N.

config ECRYPT_FS
	tristate "eCrypt filesystem layer support (EXPERIMENTAL)"
	depends on EXPERIMENTAL && KEYS && CRYPTO && NET
	help
	  Encrypted filesystem that operates on the VFS layer.  See
	  <file:Documentation/filesystems/ecryptfs.txt> to learn more about
	  eCryptfs.  Userspace components are required and can be
	  obtained from <http://ecryptfs.sf.net>.

	  To compile this file system support as a module, choose M here: the
	  module will be called ecryptfs.

config HFS_FS
	tristate "Apple Macintosh file system support (EXPERIMENTAL)"
	depends on BLOCK && EXPERIMENTAL
	select NLS
	help
	  If you say Y here, you will be able to mount Macintosh-formatted
	  floppy disks and hard drive partitions with full read-write access.
	  Please read <file:Documentation/filesystems/hfs.txt> to learn about
	  the available mount options.

	  To compile this file system support as a module, choose M here: the
	  module will be called hfs.

config HFSPLUS_FS
	tristate "Apple Extended HFS file system support"
	depends on BLOCK
	select NLS
	select NLS_UTF8
	help
	  If you say Y here, you will be able to mount extended format
	  Macintosh-formatted hard drive partitions with full read-write access.

	  This file system is often called HFS+ and was introduced with
	  MacOS 8. It includes all Mac specific filesystem data such as
	  data forks and creator codes, but it also has several UNIX
	  style features such as file ownership and permissions.

config BEFS_FS
	tristate "BeOS file system (BeFS) support (read only) (EXPERIMENTAL)"
	depends on BLOCK && EXPERIMENTAL
	select NLS
	help
	  The BeOS File System (BeFS) is the native file system of Be, Inc's
	  BeOS. Notable features include support for arbitrary attributes
	  on files and directories, and database-like indices on selected
	  attributes. (Also note that this driver doesn't make those features
	  available at this time). It is a 64 bit filesystem, so it supports
	  extremely large volumes and files.

	  If you use this filesystem, you should also say Y to at least one
	  of the NLS (native language support) options below.

	  If you don't know what this is about, say N.

	  To compile this as a module, choose M here: the module will be
	  called befs.

config BEFS_DEBUG
	bool "Debug BeFS"
	depends on BEFS_FS
	help
	  If you say Y here, you can use the 'debug' mount option to enable
	  debugging output from the driver.

config BFS_FS
	tristate "BFS file system support (EXPERIMENTAL)"
	depends on BLOCK && EXPERIMENTAL
	help
	  Boot File System (BFS) is a file system used under SCO UnixWare to
	  allow the bootloader access to the kernel image and other important
	  files during the boot process.  It is usually mounted under /stand
	  and corresponds to the slice marked as "STAND" in the UnixWare
	  partition.  You should say Y if you want to read or write the files
	  on your /stand slice from within Linux.  You then also need to say Y
	  to "UnixWare slices support", below.  More information about the BFS
	  file system is contained in the file
	  <file:Documentation/filesystems/bfs.txt>.

	  If you don't know what this is about, say N.

	  To compile this as a module, choose M here: the module will be called
	  bfs.  Note that the file system of your root partition (the one
	  containing the directory /) cannot be compiled as a module.



config EFS_FS
	tristate "EFS file system support (read only) (EXPERIMENTAL)"
	depends on BLOCK && EXPERIMENTAL
	help
	  EFS is an older file system used for non-ISO9660 CD-ROMs and hard
	  disk partitions by SGI's IRIX operating system (IRIX 6.0 and newer
	  uses the XFS file system for hard disk partitions however).

	  This implementation only offers read-only access. If you don't know
	  what all this is about, it's safe to say N. For more information
	  about EFS see its home page at <http://aeschi.ch.eu.org/efs/>.

	  To compile the EFS file system support as a module, choose M here: the
	  module will be called efs.

source "fs/jffs2/Kconfig"
# UBIFS File system configuration
source "fs/ubifs/Kconfig"

config CRAMFS
	tristate "Compressed ROM file system support (cramfs)"
	depends on BLOCK
	select ZLIB_INFLATE
	help
	  Saying Y here includes support for CramFs (Compressed ROM File
	  System).  CramFs is designed to be a simple, small, and compressed
	  file system for ROM based embedded systems.  CramFs is read-only,
	  limited to 256MB file systems (with 16MB files), and doesn't support
	  16/32 bits uid/gid, hard links and timestamps.

	  See <file:Documentation/filesystems/cramfs.txt> and
	  <file:fs/cramfs/README> for further information.

	  To compile this as a module, choose M here: the module will be called
	  cramfs.  Note that the root file system (the one containing the
	  directory /) cannot be compiled as a module.

	  If unsure, say N.

config SQUASHFS
	tristate "SquashFS 4.0 - Squashed file system support"
	depends on BLOCK
	select ZLIB_INFLATE
	help
	  Saying Y here includes support for SquashFS 4.0 (a Compressed
	  Read-Only File System).  Squashfs is a highly compressed read-only
	  filesystem for Linux.  It uses zlib compression to compress both
	  files, inodes and directories.  Inodes in the system are very small
	  and all blocks are packed to minimise data overhead. Block sizes
	  greater than 4K are supported up to a maximum of 1 Mbytes (default
	  block size 128K).  SquashFS 4.0 supports 64 bit filesystems and files
	  (larger than 4GB), full uid/gid information, hard links and
	  timestamps.  

	  Squashfs is intended for general read-only filesystem use, for
	  archival use (i.e. in cases where a .tar.gz file may be used), and in
	  embedded systems where low overhead is needed.  Further information
	  and tools are available from http://squashfs.sourceforge.net.

	  If you want to compile this as a module ( = code which can be
	  inserted in and removed from the running kernel whenever you want),
	  say M here and read <file:Documentation/modules.txt>.  The module
	  will be called squashfs.  Note that the root file system (the one
	  containing the directory /) cannot be compiled as a module.

	  If unsure, say N.

config SQUASHFS_EMBEDDED

	bool "Additional option for memory-constrained systems" 
	depends on SQUASHFS
	default n
	help
	  Saying Y here allows you to specify cache size.

	  If unsure, say N.

config SQUASHFS_FRAGMENT_CACHE_SIZE
	int "Number of fragments cached" if SQUASHFS_EMBEDDED
	depends on SQUASHFS
	default "3"
	help
	  By default SquashFS caches the last 3 fragments read from
	  the filesystem.  Increasing this amount may mean SquashFS
	  has to re-read fragments less often from disk, at the expense
	  of extra system memory.  Decreasing this amount will mean
	  SquashFS uses less memory at the expense of extra reads from disk.

	  Note there must be at least one cached fragment.  Anything
	  much more than three will probably not make much difference.

config VXFS_FS
	tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
	depends on BLOCK
	help
	  FreeVxFS is a file system driver that support the VERITAS VxFS(TM)
	  file system format.  VERITAS VxFS(TM) is the standard file system
	  of SCO UnixWare (and possibly others) and optionally available
	  for Sunsoft Solaris, HP-UX and many other operating systems.
	  Currently only readonly access is supported.

	  NOTE: the file system type as used by mount(1), mount(2) and
	  fstab(5) is 'vxfs' as it describes the file system format, not
	  the actual driver.

	  To compile this as a module, choose M here: the module will be
	  called freevxfs.  If unsure, say N.

config MINIX_FS
	tristate "Minix file system support"
	depends on BLOCK
	help
	  Minix is a simple operating system used in many classes about OS's.
	  The minix file system (method to organize files on a hard disk
	  partition or a floppy disk) was the original file system for Linux,
	  but has been superseded by the second extended file system ext2fs.
	  You don't want to use the minix file system on your hard disk
	  because of certain built-in restrictions, but it is sometimes found
	  on older Linux floppy disks.  This option will enlarge your kernel
	  by about 28 KB. If unsure, say N.

	  To compile this file system support as a module, choose M here: the
	  module will be called minix.  Note that the file system of your root
	  partition (the one containing the directory /) cannot be compiled as
	  a module.

config OMFS_FS
	tristate "SonicBlue Optimized MPEG File System support"
	depends on BLOCK
	select CRC_ITU_T
	help
	  This is the proprietary file system used by the Rio Karma music
	  player and ReplayTV DVR.  Despite the name, this filesystem is not
	  more efficient than a standard FS for MPEG files, in fact likely
	  the opposite is true.  Say Y if you have either of these devices
	  and wish to mount its disk.

	  To compile this file system support as a module, choose M here: the
	  module will be called omfs.  If unsure, say N.

config HPFS_FS
	tristate "OS/2 HPFS file system support"
	depends on BLOCK
	help
	  OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
	  is the file system used for organizing files on OS/2 hard disk
	  partitions. Say Y if you want to be able to read files from and
	  write files to an OS/2 HPFS partition on your hard drive. OS/2
	  floppies however are in regular MSDOS format, so you don't need this
	  option in order to be able to read them. Read
	  <file:Documentation/filesystems/hpfs.txt>.

	  To compile this file system support as a module, choose M here: the
	  module will be called hpfs.  If unsure, say N.


config QNX4FS_FS
	tristate "QNX4 file system support (read only)"
	depends on BLOCK
	help
	  This is the file system used by the real-time operating systems
	  QNX 4 and QNX 6 (the latter is also called QNX RTP).
	  Further information is available at <http://www.qnx.com/>.
	  Say Y if you intend to mount QNX hard disks or floppies.
	  Unless you say Y to "QNX4FS read-write support" below, you will
	  only be able to read these file systems.

	  To compile this file system support as a module, choose M here: the
	  module will be called qnx4.

	  If you don't know whether you need it, then you don't need it:
	  answer N.

config QNX4FS_RW
	bool "QNX4FS write support (DANGEROUS)"
	depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
	help
	  Say Y if you want to test write support for QNX4 file systems.

	  It's currently broken, so for now:
	  answer N.

config ROMFS_FS
	tristate "ROM file system support"
	depends on BLOCK
	---help---
	  This is a very small read-only file system mainly intended for
	  initial ram disks of installation disks, but it could be used for
	  other read-only media as well.  Read
	  <file:Documentation/filesystems/romfs.txt> for details.

	  To compile this file system support as a module, choose M here: the
	  module will be called romfs.  Note that the file system of your
	  root partition (the one containing the directory /) cannot be a
	  module.

	  If you don't know whether you need it, then you don't need it:
	  answer N.


config SYSV_FS
	tristate "System V/Xenix/V7/Coherent file system support"
	depends on BLOCK
	help
	  SCO, Xenix and Coherent are commercial Unix systems for Intel
	  machines, and Version 7 was used on the DEC PDP-11. Saying Y
	  here would allow you to read from their floppies and hard disk
	  partitions.

	  If you have floppies or hard disk partitions like that, it is likely
	  that they contain binaries from those other Unix systems; in order
	  to run these binaries, you will want to install linux-abi which is
	  a set of kernel modules that lets you run SCO, Xenix, Wyse,
	  UnixWare, Dell Unix and System V programs under Linux.  It is
	  available via FTP (user: ftp) from
	  <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
	  NOTE: that will work only for binaries from Intel-based systems;
	  PDP ones will have to wait until somebody ports Linux to -11 ;-)

	  If you only intend to mount files from some other Unix over the
	  network using NFS, you don't need the System V file system support
	  (but you need NFS file system support obviously).

	  Note that this option is generally not needed for floppies, since a
	  good portable way to transport files and directories between unixes
	  (and even other operating systems) is given by the tar program ("man
	  tar" or preferably "info tar").  Note also that this option has
	  nothing whatsoever to do with the option "System V IPC". Read about
	  the System V file system in
	  <file:Documentation/filesystems/sysv-fs.txt>.
	  Saying Y here will enlarge your kernel by about 27 KB.

	  To compile this as a module, choose M here: the module will be called
	  sysv.

	  If you haven't heard about all of this before, it's safe to say N.


config UFS_FS
	tristate "UFS file system support (read only)"
	depends on BLOCK
	help
	  BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
	  OpenBSD and NeXTstep) use a file system called UFS. Some System V
	  Unixes can create and mount hard disk partitions and diskettes using
	  this file system as well. Saying Y here will allow you to read from
	  these partitions; if you also want to write to them, say Y to the
	  experimental "UFS file system write support", below. Please read the
	  file <file:Documentation/filesystems/ufs.txt> for more information.

          The recently released UFS2 variant (used in FreeBSD 5.x) is
          READ-ONLY supported.

	  Note that this option is generally not needed for floppies, since a
	  good portable way to transport files and directories between unixes
	  (and even other operating systems) is given by the tar program ("man
	  tar" or preferably "info tar").

	  When accessing NeXTstep files, you may need to convert them from the
	  NeXT character set to the Latin1 character set; use the program
	  recode ("info recode") for this purpose.

	  To compile the UFS file system support as a module, choose M here: the
	  module will be called ufs.

	  If you haven't heard about all of this before, it's safe to say N.

config UFS_FS_WRITE
	bool "UFS file system write support (DANGEROUS)"
	depends on UFS_FS && EXPERIMENTAL
	help
	  Say Y here if you want to try writing to UFS partitions. This is
	  experimental, so you should back up your UFS partitions beforehand.

config UFS_DEBUG
	bool "UFS debugging"
	depends on UFS_FS
	help
	  If you are experiencing any problems with the UFS filesystem, say
	  Y here.  This will result in _many_ additional debugging messages to be
	  written to the system log.

endif # MISC_FILESYSTEMS

menuconfig NETWORK_FILESYSTEMS
	bool "Network File Systems"
	default y
	depends on NET
	---help---
	  Say Y here to get to see options for network filesystems and
	  filesystem-related networking code, such as NFS daemon and
	  RPCSEC security modules.

	  This option alone does not add any kernel code.

	  If you say N, all options in this submenu will be skipped and
	  disabled; if unsure, say Y here.

if NETWORK_FILESYSTEMS

config NFS_FS
	tristate "NFS client support"
	depends on INET
	select LOCKD
	select SUNRPC
	select NFS_ACL_SUPPORT if NFS_V3_ACL
	help
	  Choose Y here if you want to access files residing on other
	  computers using Sun's Network File System protocol.  To compile
	  this file system support as a module, choose M here: the module
	  will be called nfs.

	  To mount file systems exported by NFS servers, you also need to
	  install the user space mount.nfs command which can be found in
	  the Linux nfs-utils package, available from http://linux-nfs.org/.
	  Information about using the mount command is available in the
	  mount(8) man page.  More detail about the Linux NFS client
	  implementation is available via the nfs(5) man page.

	  Below you can choose which versions of the NFS protocol are
	  available in the kernel to mount NFS servers.  Support for NFS
	  version 2 (RFC 1094) is always available when NFS_FS is selected.

	  To configure a system which mounts its root file system via NFS
	  at boot time, say Y here, select "Kernel level IP
	  autoconfiguration" in the NETWORK menu, and select "Root file
	  system on NFS" below.  You cannot compile this file system as a
	  module in this case.

	  If unsure, say N.

config NFS_V3
	bool "NFS client support for NFS version 3"
	depends on NFS_FS
	help
	  This option enables support for version 3 of the NFS protocol
	  (RFC 1813) in the kernel's NFS client.

	  If unsure, say Y.

config NFS_V3_ACL
	bool "NFS client support for the NFSv3 ACL protocol extension"
	depends on NFS_V3
	help
	  Some NFS servers support an auxiliary NFSv3 ACL protocol that
	  Sun added to Solaris but never became an official part of the
	  NFS version 3 protocol.  This protocol extension allows
	  applications on NFS clients to manipulate POSIX Access Control
	  Lists on files residing on NFS servers.  NFS servers enforce
	  ACLs on local files whether this protocol is available or not.

	  Choose Y here if your NFS server supports the Solaris NFSv3 ACL
	  protocol extension and you want your NFS client to allow
	  applications to access and modify ACLs on files on the server.

	  Most NFS servers don't support the Solaris NFSv3 ACL protocol
	  extension.  You can choose N here or specify the "noacl" mount
	  option to prevent your NFS client from trying to use the NFSv3
	  ACL protocol.

	  If unsure, say N.

config NFS_V4
	bool "NFS client support for NFS version 4 (EXPERIMENTAL)"
	depends on NFS_FS && EXPERIMENTAL
	select RPCSEC_GSS_KRB5
	help
	  This option enables support for version 4 of the NFS protocol
	  (RFC 3530) in the kernel's NFS client.

	  To mount NFS servers using NFSv4, you also need to install user
	  space programs which can be found in the Linux nfs-utils package,
	  available from http://linux-nfs.org/.

	  If unsure, say N.

config ROOT_NFS
	bool "Root file system on NFS"
	depends on NFS_FS=y && IP_PNP
	help
	  If you want your system to mount its root file system via NFS,
	  choose Y here.  This is common practice for managing systems
	  without local permanent storage.  For details, read
	  <file:Documentation/filesystems/nfsroot.txt>.

	  Most people say N here.

config NFSD
	tristate "NFS server support"
	depends on INET
	select LOCKD
	select SUNRPC
	select EXPORTFS
	select NFS_ACL_SUPPORT if NFSD_V2_ACL
	help
	  Choose Y here if you want to allow other computers to access
	  files residing on this system using Sun's Network File System
	  protocol.  To compile the NFS server support as a module,
	  choose M here: the module will be called nfsd.

	  You may choose to use a user-space NFS server instead, in which
	  case you can choose N here.

	  To export local file systems using NFS, you also need to install
	  user space programs which can be found in the Linux nfs-utils
	  package, available from http://linux-nfs.org/.  More detail about
	  the Linux NFS server implementation is available via the
	  exports(5) man page.

	  Below you can choose which versions of the NFS protocol are
	  available to clients mounting the NFS server on this system.
	  Support for NFS version 2 (RFC 1094) is always available when
	  CONFIG_NFSD is selected.

	  If unsure, say N.

config NFSD_V2_ACL
	bool
	depends on NFSD

config NFSD_V3
	bool "NFS server support for NFS version 3"
	depends on NFSD
	help
	  This option enables support in your system's NFS server for
	  version 3 of the NFS protocol (RFC 1813).

	  If unsure, say Y.

config NFSD_V3_ACL
	bool "NFS server support for the NFSv3 ACL protocol extension"
	depends on NFSD_V3
	select NFSD_V2_ACL
	help
	  Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
	  never became an official part of the NFS version 3 protocol.
	  This protocol extension allows applications on NFS clients to
	  manipulate POSIX Access Control Lists on files residing on NFS
	  servers.  NFS servers enforce POSIX ACLs on local files whether
	  this protocol is available or not.

	  This option enables support in your system's NFS server for the
	  NFSv3 ACL protocol extension allowing NFS clients to manipulate
	  POSIX ACLs on files exported by your system's NFS server.  NFS
	  clients which support the Solaris NFSv3 ACL protocol can then
	  access and modify ACLs on your NFS server.

	  To store ACLs on your NFS server, you also need to enable ACL-
	  related CONFIG options for your local file systems of choice.

	  If unsure, say N.

config NFSD_V4
	bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
	depends on NFSD && PROC_FS && EXPERIMENTAL
	select NFSD_V3
	select FS_POSIX_ACL
	select RPCSEC_GSS_KRB5
	help
	  This option enables support in your system's NFS server for
	  version 4 of the NFS protocol (RFC 3530).

	  To export files using NFSv4, you need to install additional user
	  space programs which can be found in the Linux nfs-utils package,
	  available from http://linux-nfs.org/.

	  If unsure, say N.

config LOCKD
	tristate

config LOCKD_V4
	bool
	depends on NFSD_V3 || NFS_V3
	default y

config EXPORTFS
	tristate

config NFS_ACL_SUPPORT
	tristate
	select FS_POSIX_ACL

config NFS_COMMON
	bool
	depends on NFSD || NFS_FS
	default y

config SUNRPC
	tristate

config SUNRPC_GSS
	tristate

config SUNRPC_XPRT_RDMA
	tristate
	depends on SUNRPC && INFINIBAND && EXPERIMENTAL
	default SUNRPC && INFINIBAND
	help
	  This option enables an RPC client transport capability that
	  allows the NFS client to mount servers via an RDMA-enabled
	  transport.

	  To compile RPC client RDMA transport support as a module,
	  choose M here: the module will be called xprtrdma.

	  If unsure, say N.

config SUNRPC_REGISTER_V4
	bool "Register local RPC services via rpcbind v4 (EXPERIMENTAL)"
	depends on SUNRPC && EXPERIMENTAL
	default n
	help
	  Sun added support for registering RPC services at an IPv6
	  address by creating two new versions of the rpcbind protocol
	  (RFC 1833).

	  This option enables support in the kernel RPC server for
	  registering kernel RPC services via version 4 of the rpcbind
	  protocol.  If you enable this option, you must run a portmapper
	  daemon that supports rpcbind protocol version 4.

	  Serving NFS over IPv6 from knfsd (the kernel's NFS server)
	  requires that you enable this option and use a portmapper that
	  supports rpcbind version 4.

	  If unsure, say N to get traditional behavior (register kernel
	  RPC services using only rpcbind version 2).  Distributions
	  using the legacy Linux portmapper daemon must say N here.

config RPCSEC_GSS_KRB5
	tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
	depends on SUNRPC && EXPERIMENTAL
	select SUNRPC_GSS
	select CRYPTO
	select CRYPTO_MD5
	select CRYPTO_DES
	select CRYPTO_CBC
	help
	  Choose Y here to enable Secure RPC using the Kerberos version 5
	  GSS-API mechanism (RFC 1964).

	  Secure RPC calls with Kerberos require an auxiliary user-space
	  daemon which may be found in the Linux nfs-utils package
	  available from http://linux-nfs.org/.  In addition, user-space
	  Kerberos support should be installed.

	  If unsure, say N.

config RPCSEC_GSS_SPKM3
	tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
	depends on SUNRPC && EXPERIMENTAL
	select SUNRPC_GSS
	select CRYPTO
	select CRYPTO_MD5
	select CRYPTO_DES
	select CRYPTO_CAST5
	select CRYPTO_CBC
	help
	  Choose Y here to enable Secure RPC using the SPKM3 public key
	  GSS-API mechansim (RFC 2025).

	  Secure RPC calls with SPKM3 require an auxiliary userspace
	  daemon which may be found in the Linux nfs-utils package
	  available from http://linux-nfs.org/.

	  If unsure, say N.

config SMB_FS
	tristate "SMB file system support (OBSOLETE, please use CIFS)"
	depends on INET
	select NLS
	help
	  SMB (Server Message Block) is the protocol Windows for Workgroups
	  (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
	  files and printers over local networks.  Saying Y here allows you to
	  mount their file systems (often called "shares" in this context) and
	  access them just like any other Unix directory.  Currently, this
	  works only if the Windows machines use TCP/IP as the underlying
	  transport protocol, and not NetBEUI.  For details, read
	  <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
	  available from <http://www.tldp.org/docs.html#howto>.

	  Note: if you just want your box to act as an SMB *server* and make
	  files and printing services available to Windows clients (which need
	  to have a TCP/IP stack), you don't need to say Y here; you can use
	  the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
	  for that.

	  General information about how to connect Linux, Windows machines and
	  Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.

	  To compile the SMB support as a module, choose M here:
	  the module will be called smbfs.  Most people say N, however.

config SMB_NLS_DEFAULT
	bool "Use a default NLS"
	depends on SMB_FS
	help
	  Enabling this will make smbfs use nls translations by default. You
	  need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
	  settings and you need to give the default nls for the SMB server as
	  CONFIG_SMB_NLS_REMOTE.

	  The nls settings can be changed at mount time, if your smbmount
	  supports that, using the codepage and iocharset parameters.

	  smbmount from samba 2.2.0 or later supports this.

config SMB_NLS_REMOTE
	string "Default Remote NLS Option"
	depends on SMB_NLS_DEFAULT
	default "cp437"
	help
	  This setting allows you to specify a default value for which
	  codepage the server uses. If this field is left blank no
	  translations will be done by default. The local codepage/charset
	  default to CONFIG_NLS_DEFAULT.

	  The nls settings can be changed at mount time, if your smbmount
	  supports that, using the codepage and iocharset parameters.

	  smbmount from samba 2.2.0 or later supports this.

source "fs/cifs/Kconfig"

config NCP_FS
	tristate "NCP file system support (to mount NetWare volumes)"
	depends on IPX!=n || INET
	help
	  NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
	  used by Novell NetWare clients to talk to file servers.  It is to
	  IPX what NFS is to TCP/IP, if that helps.  Saying Y here allows you
	  to mount NetWare file server volumes and to access them just like
	  any other Unix directory.  For details, please read the file
	  <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
	  the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.

	  You do not have to say Y here if you want your Linux box to act as a
	  file *server* for Novell NetWare clients.

	  General information about how to connect Linux, Windows machines and
	  Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.

	  To compile this as a module, choose M here: the module will be called
	  ncpfs.  Say N unless you are connected to a Novell network.

source "fs/ncpfs/Kconfig"

config CODA_FS
	tristate "Coda file system support (advanced network fs)"
	depends on INET
	help
	  Coda is an advanced network file system, similar to NFS in that it
	  enables you to mount file systems of a remote server and access them
	  with regular Unix commands as if they were sitting on your hard
	  disk.  Coda has several advantages over NFS: support for
	  disconnected operation (e.g. for laptops), read/write server
	  replication, security model for authentication and encryption,
	  persistent client caches and write back caching.

	  If you say Y here, your Linux box will be able to act as a Coda
	  *client*.  You will need user level code as well, both for the
	  client and server.  Servers are currently user level, i.e. they need
	  no kernel support.  Please read
	  <file:Documentation/filesystems/coda.txt> and check out the Coda
	  home page <http://www.coda.cs.cmu.edu/>.

	  To compile the coda client support as a module, choose M here: the
	  module will be called coda.

config AFS_FS
	tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
	depends on INET && EXPERIMENTAL
	select AF_RXRPC
	help
	  If you say Y here, you will get an experimental Andrew File System
	  driver. It currently only supports unsecured read-only AFS access.

	  See <file:Documentation/filesystems/afs.txt> for more information.

	  If unsure, say N.

config AFS_DEBUG
	bool "AFS dynamic debugging"
	depends on AFS_FS
	help
	  Say Y here to make runtime controllable debugging messages appear.

	  See <file:Documentation/filesystems/afs.txt> for more information.

	  If unsure, say N.

config 9P_FS
	tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
	depends on INET && NET_9P && EXPERIMENTAL
	help
	  If you say Y here, you will get experimental support for
	  Plan 9 resource sharing via the 9P2000 protocol.

	  See <http://v9fs.sf.net> for more information.

	  If unsure, say N.

endif # NETWORK_FILESYSTEMS

if BLOCK
menu "Partition Types"

source "fs/partitions/Kconfig"

endmenu
endif

source "fs/nls/Kconfig"
source "fs/dlm/Kconfig"

endmenu