diff -Naur cdrtools-2.01.01.orig/cdrecord/cdrecord.c cdrtools-2.01.01/cdrecord/cdrecord.c
--- cdrtools-2.01.01.orig/cdrecord/cdrecord.c	2007-07-09 10:56:55.613184429 -0700
+++ cdrtools-2.01.01/cdrecord/cdrecord.c	2007-07-09 10:59:55.585728489 -0700
@@ -517,8 +517,10 @@
 	 *
 	 * XXX Below this point we do not need root privilleges anymore.
 	 */
-	if (geteuid() != getuid()) {	/* AIX does not like to do this */
-					/* If we are not root		*/
+	// fixing issue with kernel >= 2.6.8.1
+	//	if (geteuid() != getuid()) {	/* AIX does not like to do this */
+						/* If we are not root		*/
+ /*
 #ifdef	HAVE_SETREUID
 		if (setreuid(-1, getuid()) < 0)
 #else
@@ -530,6 +532,7 @@
 #endif
 			comerr("Panic cannot set back effective uid.\n");
 	}
+*/
 	/*
 	 * WARNING: We now are no more able to do any privilleged operation
 	 * unless we have been called by root.
@@ -1106,10 +1109,13 @@
 		 * even on OS that do not support getreuid() which is *BSD
 		 * and SUSv3 only.
 		 */
-		if (oeuid != getuid()) {
+	  // fixing issue with kernel >= 2.6.8.1
+	  /*
+	  if (oeuid != getuid()) {
 			if (setreuid(-1, oeuid) < 0)
 				errmsg("Could set back effective uid.\n");
 		}
+	  */
 #endif
 		/*
 		 * fork() here to start the extra process needed for
@@ -1124,11 +1130,14 @@
 		/*
 		 * XXX Below this point we never need root privilleges anymore.
 		 */
-		if (geteuid() != getuid()) {	/* AIX does not like to do this */
+		// fixing issue with kernel >= 2.6.8.1
+		//		if (geteuid() != getuid()) {	/* AIX does not like to do this */
 						/* If we are not root		*/
+		/*
 			if (setreuid(-1, getuid()) < 0)
 				comerr("Panic cannot set back effective uid.\n");
 		}
+		*/
 #endif
 	}
 	if ((*dp->cdr_set_speed_dummy)(scgp, dp, &speed) < 0) {
