  			break;
  		case 'm':
  			if (optarg)
-@@ -275,6 +295,18 @@
- 		case OPT_PRESERVE_CRED:
- 			preserve_cred = 1;
+@@ -293,6 +313,18 @@
+ 			selinux = 1;
  			break;
+ #endif
 +		case 'b':
 +			if (bind_mount_maps_free_slot_index >= BIND_MOUNT_MAPS_SIZE)
 +				break;

 		default:
 			usage(EXIT_FAILURE);
 		}
@@ -358,6 +390,20 @@
 		wd_fd = -1;
 	}
 

+	memset(bind_mount_maps, 0, sizeof(bind_mount_maps));
 
 	while ((c =
-		getopt_long(argc, argv, "+hVt:m::u::i::n::p::U::S:G:r::w::FZ",
+		getopt_long(argc, argv, "+hVt:m::u::i::n::p::U::S:G:r::w::FZb:",
 			    longopts, NULL)) != -1) {
 		switch (c) {
 		case 'h':
@@ -223,8 +234,17 @@
 			printf(UTIL_LINUX_VERSION);
 			return EXIT_SUCCESS;
 		case 't':
