← Back to team overview

kernel-packages team mailing list archive

[Bug 1245832] Re: Bluetooth not working 13.10

 

Cut from Bug Description.

** Attachment added: "log"
   https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1245832/+attachment/3898312/+files/log

** Description changed:

- Please be patient as I am new to bug reporting and examining the
- workings of the system,
+ Unable to effect bluetooth connection. Able to prior to upgrade to
+ 13.10. As standard Bluetooth indicator not working on top bar, open "as
+ standard bluetooth" via settings or dash okay, Can pair with external
+ speaker for example but cannot connect, slider in Bluetooth GUI will not
+ slide to give connect staus. Tried Blueman Device Manager 1.23, can also
+ find and pair but unable to connect to device.
  
- Hardware:- Dell Latttitude D610, Mem- 2Gb, Processor- Intel Pentium (R)M
- 1.86 Ghz, Graphics- Galium 04 on ATI RV370, 32 Bit
+ As installed config shown below just incase there is an error ./ect/bluetooth/audio.conf :
+ https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1245832/+attachment/3898312/+files/log
  
- Bug, Unable to effect bluetooth connection. Able to prior to upgrade to
- 13.10.
- 
- As standard Bluetooth indicator not working on top bar, open "as standard bluetooth" via settings or dash okay, Can pair with external speaker for example but cannot connect, slider in Bluetooth GUI will not slide to give connect staus.
- Tried Blueman Device Manager 1.23, can also find and pair but unable to connect to device.
- 
- As installed config shown below just incase there is an error ./ect/bluetooth/audio.conf
- # Configuration file for the audio service
- 
- # This section contains options which are not specific to any
- # particular interface
- [General]
- 
- # Switch to master role for incoming connections (defaults to true)
- #Master=true
- 
- # If we want to disable support for specific services
- # Defaults to supporting all implemented services
- #Disable=Gateway,Source,Socket
- 
- # SCO routing. Either PCM or HCI (in which case audio is routed to/from ALSA)
- # Defaults to HCI
- #SCORouting=PCM
- 
- # Automatically connect both A2DP and HFP/HSP profiles for incoming
- # connections. Some headsets that support both profiles will only connect the
- # other one automatically so the default setting of true is usually a good
- # idea.
- #AutoConnect=true
- 
- # Headset interface specific options (i.e. options which affect how the audio
- # service interacts with remote headset devices)
- [Headset]
- 
- # Set to true to support HFP, false means only HSP is supported
- # Defaults to true
- HFP=true
- 
- # Maximum number of connected HSP/HFP devices per adapter. Defaults to 1
- MaxConnected=1
- 
- # Set to true to enable use of fast connectable mode (faster page scanning)
- # for HFP when incoming call starts. Default settings are restored after
- # call is answered or rejected. Page scan interval is much shorter and page
- # scan type changed to interlaced. Such allows faster connection initiated
- # by a headset.
- FastConnectable=false
- 
- # Just an example of potential config options for the other interfaces
- #[A2DP]
- #SBCSources=1
- #MPEG12Sources=0
- 
- A system crash report generated an error in /usr/bin/blueman-assistant
- file copy below
- #! /usr/bin/python
- 
- # Copyright (C) 2008 Valmantas Paliksa <walmis at balticum-tv dot lt>
- # Copyright (C) 2008 Tadas Dailyda <tadas at dailyda dot com>
- #
- # Licensed under the GNU General Public License Version 3
- #
- # This program is free software: you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
- # the Free Software Foundation, either version 3 of the License, or
- # (at your option) any later version.
- #
- # This program is distributed in the hope that it will be useful,
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- # GNU General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program.  If not, see <http://www.gnu.org/licenses/>.
- # 
- PAGE_INTRO =      0
- PAGE_DEVLIST =    1
- PAGE_PASSKEY =    2
- PAGE_PAIRING =    3
- PAGE_CONNECT =    4
- PAGE_CONNECTING = 5
- PAGE_FINISH =     6
- 
- pages = {}
- 
- 
- import os
- import sys
- import gtk
- import random
- import dbus.glib
- from optparse import OptionParser
- 
- #support running uninstalled
- _dirname = os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))
- if os.path.exists(os.path.join(_dirname,"ChangeLog")):
- 	sys.path.insert(0, _dirname)
- 
- from blueman.Functions import *
- from blueman.gui.DeviceSelectorWidget import DeviceSelectorWidget
- from blueman.bluez.Agent import Agent, AgentMethod
- from blueman.bluez.Manager import Manager
- from blueman.main.FakeDevice import FakeDevice
- from blueman.main.Device import Device
- from blueman.main.AppletService import AppletService
- from blueman.Sdp import *
- 
- class Assistant(Agent):
- 	def __init__(self):
- 		Agent.__init__(self, "/")
- 		setup_icon_path()
- 		
- 		usage = "Usage: %prog [options]"
- 		parser = OptionParser(usage)
- 		parser.add_option("-d", "--device", dest="device",
- 				action="store", help=_("Start configuration assistant for this device"), metavar="ADDRESS")
- 	
- 		(options, args) = parser.parse_args()
- 		
- 		check_bluetooth_status(_("Bluetooth needs to be turned on for the Bluetooth assistant to work"), lambda: exit())
- 		
- 		self.options = options		
- 		
- 		self.Device = None
- 		self.Adapter = None
- 		self.PairType = 0
- 		self.Passkey = ""
- 		self.Service = None
- 		
- 		self.Builder = gtk.Builder()
- 		self.Builder.set_translation_domain("blueman")
- 		self.Builder.add_from_file(UI_PATH +"/assistant.ui")
- 		self.assistant = self.Builder.get_object("assistant")
- 		self.assistant.set_title(_("Bluetooth Assistant"))
- 			
- 		self.applet = AppletService()
- 		
- 		self.assistant.connect("prepare", self.on_prepare)
- 		self.assistant.connect("close", self.on_close)
- 		self.assistant.connect("cancel", self.on_close)
- 
- 		pages[PAGE_INTRO] = self.Builder.get_object("l_page0")
- 		self.assistant.set_page_header_image(pages[PAGE_INTRO], get_icon("blueman", 32))
- 		self.assistant.set_page_complete(pages[PAGE_INTRO], True)
- 		
- 		pages[PAGE_DEVLIST] = self.Builder.get_object("a_page1")
- 		self.assistant.set_page_header_image(pages[PAGE_DEVLIST], get_icon("blueman", 32))
- 		
- 		pages[PAGE_PASSKEY] = self.Builder.get_object("a_page2")
- 		self.assistant.set_page_header_image(pages[PAGE_PASSKEY], get_icon("gtk-dialog-authentication", 32))
- 		
- 		pages[PAGE_PAIRING] = self.Builder.get_object("l_page3")
- 		self.assistant.set_page_header_image(pages[PAGE_PAIRING], get_icon("gtk-dialog-authentication", 32))
- 		
- 		pages[PAGE_CONNECT] = self.Builder.get_object("a_page4")
- 		self.assistant.set_page_header_image(pages[PAGE_CONNECT], get_icon("gtk-connect", 32))
- 		
- 		pages[PAGE_CONNECTING] = self.Builder.get_object("l_page5")
- 		self.assistant.set_page_header_image(pages[PAGE_CONNECTING], get_icon("gtk-connect", 32))
- 		
- 		pages[PAGE_FINISH] = self.Builder.get_object("l_page6")
- 		self.assistant.set_page_header_image(pages[PAGE_FINISH], get_icon("gtk-yes", 32))
- 		
- 		self.svc_vbox = self.Builder.get_object("svcs")
- 		
- 		self.cust_passkey = self.Builder.get_object("e_myp")
- 		self.cust_passkey.props.sensitive = False
- 		self.cust_passkey.connect("changed", self.on_passkey_changed)
- 		
- 		self.Builder.get_object("r_dontp").connect("toggled", self.on_pairing_method_changed, 2)
- 		self.Builder.get_object("r_myp").connect("toggled", self.on_pairing_method_changed, 1)
- 		self.Builder.get_object("r_randp").connect("toggled", self.on_pairing_method_changed, 0)
- 		
- 		self.dev_widget = DeviceSelectorWidget()
- 		self.dev_widget.List.connect("device-selected", self.on_device_selected)
- 		self.dev_widget.List.connect("row-activated", self.on_row_activated)
- 		
- 		self.assistant.set_forward_page_func(self.next_page_fn, None)
- 			
- 		pages[PAGE_DEVLIST].add(self.dev_widget)
- 		
- 		self.dev_widget.show()
- 		
- 		if not self.dev_widget.List.IsValidAdapter():
- 			d = gtk.MessageDialog(type=gtk.MESSAGE_ERROR, )
- 			d.props.text = _("No adapters found")
- 			d.props.icon_name = "blueman"
- 			d.props.title = "Blueman Assistant"
- 			d.add_button(gtk.STOCK_CLOSE, gtk.RESPONSE_CANCEL)
- 			d.run()
- 			exit(1)
- 		
- 		self.assistant.show()
- 				
- 		if options.device != None:
- 			m = Manager("gobject")
- 			try:
- 				adapter = m.GetAdapter()
- 			except:
- 				print "Error: No Adapters present"
- 				exit(1)
- 			try:
- 				d = adapter.FindDevice(options.device)
- 				self.Device = Device(d)
- 				self.Adapter = adapter
- 				if self.Device.Paired:
- 					self.assistant.set_current_page(PAGE_CONNECT)
- 				else:
- 					self.assistant.set_current_page(PAGE_PASSKEY)
- 			except:
- 				info = {}
- 				info["Address"] = options.device
- 				info["Name"] = info["Address"].replace(":", "-")
- 				info["Alias"] = info["Name"]
- 				info["Fake"] = True
- 				
- 				self.Device = FakeDevice(info)
- 				self.Adapter = adapter
- 				self.assistant.set_current_page(PAGE_PASSKEY)
- 							
- 		else:
- 			self.dev_widget.List.DiscoverDevices()
- 
- 		
- 		gtk.main()
- 		
- 	def on_row_activated(self, treeview, path, view_column, *args):
- 		self.assistant.set_current_page(self.next_page_fn(self.assistant.get_current_page(), None))
- 		
- 		
- 	def next_page_fn(self, page, data):
- 		if page == PAGE_INTRO:
- 			return PAGE_DEVLIST
- 		
- 		elif page == PAGE_DEVLIST:
- 			if self.Device:
- 				if self.Device.Fake or not self.Device.Paired:
- 					return PAGE_PASSKEY
- 				else:
- 					return PAGE_CONNECT
- 			else:
- 				return PAGE_PASSKEY
- 		elif page == PAGE_PASSKEY:
- 			if not self.Device.Fake and not self.Device.Paired and self.PairType == 2:
- 				return PAGE_CONNECT
- 			#self.assistant.set_page_complete(pages[PAGE_PASSKEY], True)
- 			return PAGE_PAIRING
- 		elif page == PAGE_PAIRING:
- 			if len(self.Device.Services) == 0:
- 				return PAGE_FINISH
- 				
- 			return PAGE_CONNECT
- 		elif page == PAGE_CONNECT:
- 			
- 			if self.Service and self.Service[0]:
- 				return PAGE_CONNECTING
- 			else:
- 				return PAGE_FINISH
- 		elif page == PAGE_CONNECTING:
- 			return PAGE_FINISH
- 		elif page == PAGE_FINISH:
- 			return PAGE_FINISH+1
- 			
- 		return page
- 		
- 		
- 	def check_custom_passkey(self):
- 		return len(self.cust_passkey.props.text) != 0
- 		
- 	def on_passkey_changed(self, e):
- 		if self.PairType == 1:
- 			if self.check_custom_passkey():
- 				self.Passkey = e.props.text
- 				self.assistant.set_page_complete(pages[PAGE_PASSKEY], True)
- 			else:
- 				self.assistant.set_page_complete(pages[PAGE_PASSKEY], False)
- 		
- 		
- 	def on_pairing_method_changed(self, radio_button, type):
- 		if radio_button.props.active:
- 			if type == 0:
- 				self.cust_passkey.props.sensitive = False
- 				self.assistant.set_page_complete(pages[PAGE_PASSKEY], True)
- 			elif type == 1:
- 				self.cust_passkey.props.sensitive = True
- 				if not self.check_custom_passkey():
- 					self.assistant.set_page_complete(pages[PAGE_PASSKEY], False)
- 			else:
- 				self.cust_passkey.props.sensitive = False
- 				self.assistant.set_page_complete(pages[PAGE_PASSKEY], True)
- 			
- 			self.PairType = type
- 		
- 		
- 	def on_device_selected(self, list, device, iter):
- 		if not device:
- 			self.assistant.set_page_complete(pages[PAGE_DEVLIST], False)
- 			self.Device = None
- 			self.Adapter = list.Adapter
- 		else:
- 			self.assistant.set_page_complete(pages[PAGE_DEVLIST], True)
- 			self.Device = device
- 			self.Adapter = list.Adapter
- 	
- 	@AgentMethod
- 	def RequestPinCode(self, device):
- 		dprint("Agent.RequestPinCode")
- 		return self.Passkey
- 	
- 	@AgentMethod
- 	def RequestPasskey(self, device):
- 		dprint("Agent.RequestPasskey")
- 		return self.Passkey
- 		
- 	def on_close(self, assistant):
- 		gtk.main_quit()
- 		
- 	def on_service_toggled(self, rb, sv_name, *args):
- 		if rb.props.active:
- 			self.Service = (sv_name, args)
- 			self.assistant.set_page_complete(pages[PAGE_CONNECT], True)
- 
- 	def on_prepare(self, assistant, page):
- 		num = assistant.get_current_page()
- 		if num == PAGE_PASSKEY:
- 			self.assistant.set_page_complete(pages[PAGE_PASSKEY], True)
- 		
- 		elif num == PAGE_PAIRING:
- 			if self.Device.Fake and self.PairType == 2:
- 				pages[PAGE_PAIRING].set_markup(_("<b>Adding Device...</b>"))
- 				self.assistant.set_page_title(pages[PAGE_PAIRING], _("Adding"))
- 			else:
- 				if self.PairType == 0:
- 					self.Passkey = "%04d" % random.randint(0, 9999)
- 
- pages[PAGE_PAIRING].set_markup(_("<b>Pairing in progress...</b>\n\nEnter
- passkey <b>%s</b> on the device.") % self.Passkey)
- 
- 			def ok(dev):
- 				self.Device = Device(dev)
- 				
- 				def refresh_cb(*args):
- 					self.assistant.set_current_page(PAGE_CONNECT)
- 				
- 				self.applet.RefreshServices(self.Device.GetObjectPath(), reply_handler=refresh_cb, error_handler=refresh_cb)
- 				
- 			def err(err):
- 				print err
- 				pages[PAGE_FINISH].set_markup(_("<b>Failed to add device</b>"))
- 				self.assistant.set_page_header_image(pages[PAGE_FINISH], get_icon("gtk-no", 32))
- 				self.assistant.set_current_page(PAGE_FINISH)
- 			
- 			if self.PairType != 2:
- 				self.Adapter.CreatePairedDevice(self.Device.Address, self.GetObjectPath(), "", reply_handler=ok, error_handler=err)
- 			else:
- 				self.Adapter.CreateDevice(self.Device.Address, reply_handler=ok, error_handler=err)
- 		
- 		elif num == PAGE_CONNECT:
- 			self.svc_vbox.foreach(lambda x, y: self.svc_vbox.remove(x), None)
- 			
- 			print self.Device.Services
- 			uuids = self.Device.UUIDs
- 			rbs = []
- 			def get_first_item():
- 				try:
- 					return rbs[0]
- 				except:
- 					return None
- 				
- 			for name, service in self.Device.Services.iteritems():
- 				if name == "serial":
- 					for uuid in uuids:
- 						uuid16 = uuid128_to_uuid16(uuid)
- 						if uuid16 == DIALUP_NET_SVCLASS_ID:
- 							rbs.append(gtk.RadioButton(get_first_item(), uuid16_to_name(uuid16)))
- 							rbs[-1].connect("toggled", self.on_service_toggled, name, uuid)
- 							self.svc_vbox.pack_start(rbs[-1], False)
- 						
- 						if uuid16 == SERIAL_PORT_SVCLASS_ID:
- 							rbs.append(gtk.RadioButton(get_first_item(), uuid16_to_name(uuid16)))
- 							rbs[-1].connect("toggled", self.on_service_toggled, name, uuid)
- 							self.svc_vbox.pack_start(rbs[-1], False)
- 				elif name == "input":
- 					rbs.append(gtk.RadioButton(get_first_item(), _("Input Service")))
- 					rbs[-1].connect("toggled", self.on_service_toggled, name)
- 					self.svc_vbox.pack_start(rbs[-1], False)
- 				
- 				elif name == "network":
- 					for uuid in uuids:
- 						uuid16 = uuid128_to_uuid16(uuid)
- 						if uuid16 == GN_SVCLASS_ID:						
- 							rbs.append(gtk.RadioButton(get_first_item(), _("Group Network")))
- 							rbs[-1].connect("toggled", self.on_service_toggled, name, uuid)
- 							self.svc_vbox.pack_start(rbs[-1], False)
- 					
- 						if uuid16 == NAP_SVCLASS_ID:
- 							rbs.append(gtk.RadioButton(get_first_item(), _("Network Access Point")))
- 							rbs[-1].connect("toggled", self.on_service_toggled, name, uuid)
- 							self.svc_vbox.pack_start(rbs[-1], False)
- 			
- 				elif name == "audiosink":
- 					rbs.append(gtk.RadioButton(get_first_item(), _("A2DP Sink (Send Audio)")))
- 					rbs[-1].connect("toggled", self.on_service_toggled, name)
- 					self.svc_vbox.pack_start(rbs[-1], False)
- 				
- 				elif name == "audiosource":
- 					rbs.append(gtk.RadioButton(get_first_item(), _("A2DP Source (Receive Audio)")))
- 					rbs[-1].connect("toggled", self.on_service_toggled, name)
- 					self.svc_vbox.pack_start(rbs[-1], False)				
- 				
- 				elif name == "headset":
- 					rbs.append(gtk.RadioButton(get_first_item(), _("Headset Service")))
- 					rbs[-1].connect("toggled", self.on_service_toggled, name)
- 					self.svc_vbox.pack_start(rbs[-1], False)
- 				
- 			rbs.append(gtk.RadioButton(get_first_item(), _("Don't connect")))
- 			rbs[-1].connect("toggled", self.on_service_toggled, None)
- 			self.svc_vbox.pack_start(rbs[-1], False, False, 8)			
- 			self.svc_vbox.show_all()
- 
- 			rbs[0].emit("toggled")
- 			if len(self.svc_vbox.get_children()) == 1:
- 				self.assistant.set_current_page(self.next_page_fn(self.assistant.get_current_page(), None))
- 			
- 		elif num == PAGE_CONNECTING:
- 			print "connect"
- 			
- 			svc = self.Device.Services[self.Service[0]]
- 			
- 			def success(*args):
- 				pages[PAGE_FINISH].set_markup(_("<b>Device added and connected successfuly</b>"))
- 				self.assistant.set_page_complete(pages[PAGE_CONNECTING], True)
- 				self.assistant.set_page_header_image(pages[PAGE_FINISH], get_icon("gtk-yes", 32))
- 				self.assistant.set_current_page(PAGE_FINISH)
- 				
- 			def fail(*args):
- 				pages[PAGE_FINISH].set_markup(_("<b>Device added successfuly, but failed to connect</b>"))
- 				self.assistant.set_page_complete(pages[PAGE_CONNECTING], True)
- 				self.assistant.set_page_header_image(pages[PAGE_FINISH], get_icon("gtk-dialog-warning", 32))
- 				self.assistant.set_current_page(PAGE_FINISH)
- 			
- 			if self.Service[0] == "network":
- 				uuid = self.Service[1][0]
- 				self.applet.ServiceProxy(svc.GetInterfaceName(), svc.GetObjectPath(), "Connect", [uuid], reply_handler=success, error_handler=fail)
- 			
- 			elif self.Service[0] == "serial":
- 				uuid = self.Service[1][0]
- 				self.applet.RfcommConnect(self.Device.GetObjectPath(), uuid, reply_handler=success, error_handler=fail)
- 			else:
- 				self.applet.ServiceProxy(svc.GetInterfaceName(), svc.GetObjectPath(), "Connect", [], reply_handler=success, error_handler=fail)
- 			
- 			
- 
- 
- Assistant()
- --- 
+ ---
  ApportVersion: 2.12.5-0ubuntu2.1
  Architecture: i386
  AudioDevicesInUse:
-  USER        PID ACCESS COMMAND
-  /dev/snd/controlC0:  andy       2024 F.... pulseaudio
-  /dev/snd/pcmC0D0p:   andy       2024 F...m pulseaudio
+  USER        PID ACCESS COMMAND
+  /dev/snd/controlC0:  andy       2024 F.... pulseaudio
+  /dev/snd/pcmC0D0p:   andy       2024 F...m pulseaudio
  DistroRelease: Ubuntu 13.10
  HibernationDevice: RESUME=UUID=0fe88b05-130d-4160-a554-904a636985a3
  InstallationDate: Installed on 2013-03-15 (227 days ago)
  InstallationMedia: Ubuntu 12.10 "Quantal Quetzal" - Release i386 (20121017.2)
  MachineType: Dell Inc. Latitude D610
  MarkForUpload: True
  Package: linux (not installed)
  PccardctlIdent:
-  Socket 0:
-    no product info available
+  Socket 0:
+    no product info available
  PccardctlStatus:
-  Socket 0:
-    no card
+  Socket 0:
+    no card
  ProcFB: 0 radeondrmfb
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.11.0-13-generic root=UUID=dbeb0bf9-d815-4f72-b405-ce0693a0827e ro quiet splash vt.handoff=7
  ProcVersionSignature: Ubuntu 3.11.0-13.20-generic 3.11.6
  RelatedPackageVersions:
-  linux-restricted-modules-3.11.0-13-generic N/A
-  linux-backports-modules-3.11.0-13-generic  N/A
-  linux-firmware                             1.116
+  linux-restricted-modules-3.11.0-13-generic N/A
+  linux-backports-modules-3.11.0-13-generic  N/A
+  linux-firmware                             1.116
  Tags:  saucy
  Uname: Linux 3.11.0-13-generic i686
  UpgradeStatus: Upgraded to saucy on 2013-10-18 (10 days ago)
  UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo
  dmi.bios.date: 10/02/2005
  dmi.bios.vendor: Dell Inc.
  dmi.bios.version: A06
  dmi.board.name: 0C4708
  dmi.board.vendor: Dell Inc.
  dmi.chassis.type: 8
  dmi.chassis.vendor: Dell Inc.
  dmi.modalias: dmi:bvnDellInc.:bvrA06:bd10/02/2005:svnDellInc.:pnLatitudeD610:pvr:rvnDellInc.:rn0C4708:rvr:cvnDellInc.:ct8:cvr:
  dmi.product.name: Latitude D610
  dmi.sys.vendor: Dell Inc.

** Tags added: latest-bios-a06 regression-release

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1245832

Title:
  Bluetooth not working 13.10

Status in “linux” package in Ubuntu:
  Incomplete

Bug description:
  Unable to effect bluetooth connection. Able to prior to upgrade to
  13.10. As standard Bluetooth indicator not working on top bar, open
  "as standard bluetooth" via settings or dash okay, Can pair with
  external speaker for example but cannot connect, slider in Bluetooth
  GUI will not slide to give connect staus. Tried Blueman Device Manager
  1.23, can also find and pair but unable to connect to device.

  As installed config shown below just incase there is an error ./ect/bluetooth/audio.conf :
  https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1245832/+attachment/3898312/+files/log

  ---
  ApportVersion: 2.12.5-0ubuntu2.1
  Architecture: i386
  AudioDevicesInUse:
   USER        PID ACCESS COMMAND
   /dev/snd/controlC0:  andy       2024 F.... pulseaudio
   /dev/snd/pcmC0D0p:   andy       2024 F...m pulseaudio
  DistroRelease: Ubuntu 13.10
  HibernationDevice: RESUME=UUID=0fe88b05-130d-4160-a554-904a636985a3
  InstallationDate: Installed on 2013-03-15 (227 days ago)
  InstallationMedia: Ubuntu 12.10 "Quantal Quetzal" - Release i386 (20121017.2)
  MachineType: Dell Inc. Latitude D610
  MarkForUpload: True
  Package: linux (not installed)
  PccardctlIdent:
   Socket 0:
     no product info available
  PccardctlStatus:
   Socket 0:
     no card
  ProcFB: 0 radeondrmfb
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.11.0-13-generic root=UUID=dbeb0bf9-d815-4f72-b405-ce0693a0827e ro quiet splash vt.handoff=7
  ProcVersionSignature: Ubuntu 3.11.0-13.20-generic 3.11.6
  RelatedPackageVersions:
   linux-restricted-modules-3.11.0-13-generic N/A
   linux-backports-modules-3.11.0-13-generic  N/A
   linux-firmware                             1.116
  Tags:  saucy
  Uname: Linux 3.11.0-13-generic i686
  UpgradeStatus: Upgraded to saucy on 2013-10-18 (10 days ago)
  UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo
  dmi.bios.date: 10/02/2005
  dmi.bios.vendor: Dell Inc.
  dmi.bios.version: A06
  dmi.board.name: 0C4708
  dmi.board.vendor: Dell Inc.
  dmi.chassis.type: 8
  dmi.chassis.vendor: Dell Inc.
  dmi.modalias: dmi:bvnDellInc.:bvrA06:bd10/02/2005:svnDellInc.:pnLatitudeD610:pvr:rvnDellInc.:rn0C4708:rvr:cvnDellInc.:ct8:cvr:
  dmi.product.name: Latitude D610
  dmi.sys.vendor: Dell Inc.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1245832/+subscriptions


References