I want to add a field in drupal commerce products by default like commerce_price? I want to add some default fields whenever new product types are added like we have for commerce_price field in drupal commerce.
I already have a field_abc_attribute(widget is select list and field type is option_set_reference) added which in one of the product type 
I was checking through hook_fields_extra_fields() function but it did not create new fields on 
How can I achieve it?

function custom_module_field_info() {
  drupal_set_message('jsdfsdfsdfsd');
  return array(
    'field_product_attribute_val' =&gt; array(
      'label' =&gt; t('Product Attributes'),
      'description' =&gt; t('This field product attributes.'),
      'settings' =&gt; array(),
      'instance_settings' =&gt; array(),
      'default_widget' =&gt; 'commerce_option_set_reference_select_list',
      'default_formatter' =&gt; 'commerce_option_set_reference_form',
 //     'property_type' =&gt; '',
   //   'property_callbacks' =&gt; array('commerce_price_property_info_callback'),
     // 'default_token_formatter' =&gt; 'commerce_price_formatted_amount'
    ),
  );
}

function commerce_module_field_extra_fields() {
  $extra = array();
  drupal_set_message('nerer');
  foreach (commerce_product_types() as $type =&gt; $product_type) {
    $extra['commerce_product'][$type] = array(
      'form' =&gt; array(
                      'field_product_attribute_val' =&gt; array(
                                     'label' =&gt; t('Product Attribute For Vendor'),
                                     'description' =&gt; t('Product Attribute Field For Vendor form element'),
                                     'weight' =&gt; -10,
                      ),
      ),

      'display' =&gt; array(
        'field_product_attribute_val' =&gt; array(
          'label' =&gt; t('product attribute vendor extra'),
          'description' =&gt; t('The product attribute vendor extra of the product'),
          //      'theme' =&gt; 'commerce_product_sku',
          'weight' =&gt; -10,
        ),
      ),
    );
  }
  return $extras;
}
The hook you're trying to use is unrelated to Field API fields, unfortunately. You should look at the commerce_product.module and commerce_product_ui.module files to see how I did it in core for the default price field. Either on module enable or when a new product type is created via the UI, I call the commerce_product_type_configure() function that in turn adds the default price field to the product type. You'll want a similar function that you can invoke when a module is enabled or on hook_commerce_product_type_insert() to add your custom fields.